RSI+PA+DCA StrategyDear Tradingview community,
This RSI based trading strategy is created as a training exercise. I am not a professional trader, but a committed hobbyist. This not a finished trading strategy meant for trading, but more a combination of different trading ideas I liked to explore deeper. The aim with this exercise was to gain more knowledge and understanding about price averaging and dollar cost averaging strategies. Aside that I wanted to learn how to program a pyramiding strategy, how to plot different order entry layers and how to open positions on a specific time interval.
In this script I adapted code from a couple of strategy examples by Coinrule . Who wrote simple and powerful examples of RSI based strategies and pyramiding strategies.
Also the HOWTO scripts shared by vitvlkv were very helpful for this exercise. In the script description you can find all the sources to the code.
A PA strategy could be a helpful addition to ease the 'stress-management to buy when price drops and resolution in selling when the price is rising' (Coinrule).
The idea behind the strategy is fairly simple and is based on an RSI strategy of buying low. A position is entered when the RSI and moving average conditions are met. The position is closed when it reaches a specified take profit percentage. As soon as the first the position is openend multiple PA (price average) layers are setup based on a specified percentage of price drop. When the price crosses the layer another position with somewhat the same amount of assets is entered. This causes the average cost price (the red plot line) to decrease. If the price drops more, another similar amount of assets is bought with another price average decrease as result. When the price starts rising again the different positions are separately closed when each reaches its specified take profit. The positions can be re-openend when the price drops again. And so on. When the price rises more and crosses over the average price and reached the specified take profit on top of it, it closes all the positions at once and cancels all orders. From that moment on it waits for another price dip before it opens a new position.
Another option is to activate a DCA function that opens a position based on a fixed specified amount. It enters a position at the start of every week and only when there are already other positions openend and if the current price is below the average price of the position. Like this buying on a time interval can help lowering the average price in case the market is down.
I read in some articles that price averaging is also called dollar cost averaging as the result is somewhat the same. Although DCA is really based on buying on fixed time intervals. These strategies are both considered long term investment strategies that can be profitable in the long run and are not suitable for short term investment schemes. The downturn is that the postion size increases when the general market trend is going down and that you have to patiently wait until the market start rising again.
Another notable aspect is that the logic in this strategy works the way it does because the entries are exited based on the FIFO (first in first out) close entry rule. This means that the first exit is applied to the first entry position that is openend. In other words that when the third entry reaches its take profit level and exits, it actually exits the first entry. If you take a close look in the 'List of Trades' of your Strategy Tester panel, you can see that some 'Long1' entries are closed by an 'Exit 3' and not by an 'Exit 1'. This means that your trade partly loses, but causes a decrease in average price that is later balanced out by lower or repeated entering and closing other positions. You can change this logic to a real sequential way of closing your entries, but this changes the averaging logic considerably. In case you want to test this you need to change, in this line in the strategy call 'close_entries_rule = "FIFO"', the word FIFO to ANY.
In the settings you can specify the percentage of portfolio to use for each trade to spread the risk and for each order a trading fee of 0.075% is calculated.
Cerca negli script per "the strat"
TradingView Alerts to MT4 MT5 - Forex, indices, commoditiesHowdy Algo-Traders! This example script has been created for educational purposes - to present how to use and automatically execute TradingView Alerts on real markets.
I'm posting this script today for a reason. TradingView has just released a new feature of the PineScript language - ALERT() function. Why is it important? It is finally possible to set alerts inside PineScript strategy-type script, without the need to convert the script into study-type. You may say triggering alerts straight from strategies was possible in PineScript before (since June 2020), but it had its limitations. Starting today you can attach alert to any custom event you might want to include in your PineScript code.
With the new feature, it is easier not only to execute strategies, but to maintain codebase - having to update 2 versions of the code with each single modification was... ahem... inconvenient. Moreover, the need to convert strategy into study also meant it was required to rip the code from all strategy...() calls, which carried a lot of useful information, like entry price, position size, and more, definitely influencing results calculated by strategy backtest. So the strategy without these features very likely produced different results than with them. While it was possible to convert these features into study with some advanced "coding gymnastics", it was also quite difficult to test whether those gymnastics didn't introduce serious, bankrupting bugs.
//////
How does this new feature work? It is really simple. On your custom events in the code like "GoLong" or "GoShort", create a string variable containing all the values you need inside your alert and this string variable will be your alert's message. Then, invoke brand new alert() function and that's it (see lines 67 onwards in the script). Set it up in CreateAlert popup and enjoy. Alerts will trigger on candle close as freq= parameter specifies. Detailed specification of the new alert() function can be found in TradingView's PineScript Reference (www.tradingview.com), but there's nothing more than message= and freq= parameters. Nothing else is needed, it is very simple. Yet powerful :)
//////
Alert syntax in this script is prepared to work with TradingConnector. Strategy here is not too complex, but also not the most basic one: it includes full exits, partial exits, stop-losses and it also utilizes dynamic variables calculated by the code (such as stop-loss price). This is only an example use case, because you could handle variety of other functionalities as well: conditional entries, pending entries, pyramiding, hedging, moving stop-loss to break-even, delivering alerts to multiple brokers and more.
//////
This script is a spin-off from my previous work, posted over a year ago here: Some comments on strategy parameters have been discussed there, but let me copy-paste most important points:
* Commission is taken into consideration.
* Slippage is intentionally left at 0. Due to shorter than 1 second delivery time of TradingConnector, slippage is practically non-existing.
* This strategy is NON-REPAINTING and uses NO TRAILING-STOP or any other feature known to be causing problems.
* The strategy was backtested on EURUSD 6h timeframe, will perform differently on other markets and timeframes.
Despite the fact this strategy seems to be still profitable, it is not guaranteed it will continue to perform well in the future. Remember the no.1 rule of backtesting - no matter how profitable and good looking a script is, it only tells about the past. There is zero guarantee the same strategy will get similar results in the future.
Full specs of TradingView alerts and how to set them up can be found here: www.tradingview.com
POW EdgeHello fellow Trading View member,
Eventually our rebranded update with some extra features for our exclusive 'Edge' Strategy Script.
In this description I will run through;
The strategy itself, what is it?
What does it do?
How does it work?
How can it help you?
How good is it?
What is it.....
The Edge Strategy itself is based upon 5 indicators lining up in total confluence to enter a position in line with a trending move. Adding them together adds more confluence and probability to each individual trade outcome over the longer term. The individual strategies used are based on Trend strategies all used in combination.
The uniqueness to this is how they are combined. Indicators can work to a point individually of course, but combining them together and only trading when all are in a line was our concept, whilst reviewing how each individual indicator can be optimised to work with the others.
Also the motivation was to be the right side of the market in a trending move and capitalising on as much as that move as possible.
The first part is to ensure the candle close is above or below our moving average, we can then check the state and validity of each of the other 4 indicators. Once this confluence is in alignment a trade is valid for entry - this has to be valid at the same time - but not all valid on the same candle - they will come into alignment in different stages. But once they are, our trade is valid.
I will not reveal the other individual 3 indicators but the other is also an ADX function to add a threshold into the strategy to identify a trend - usually above 20/25. This has upsides and downsides as any user can visualise and see in the testing.
We also add to the script to look for a Buy then Sell, Sell then Buy - we found this had more profitable results overall and next phase was to review the money management; where and how we placed our SL and when and why we exited the trade.
Example - for a BUY trade to be valid, all 5 indictors must meet their own criteria before a BUY is printed on the chart. Absolutely no technical analysis is needed to trade this strategy and the data we have is based on using the strategy in isolation - how you wish to use this either independently or supporting your own trading is of course, up to you.
The SL and TP's are based on ATR Multipliers thus ensuring we are factoring in market volatility at that time. We also have a FT (Follow Trend) option, which is a worthy addition for capitalising on big trending moves.
This strategy will work on all markets and timeframes.
We understand and accept that all pairs and markets are different thus we have optimised certain pairs and timeframes with different parameters to provide increased returns, these are hard coded (H1 Timeframe) and also provided for your review.
Profitability is easily viewable in the ‘Strategy Tester’ - this is a great tool. This is where you can see historic / live data for the strategy.
Data like;
The Net Profit
Number of trades
Win Percentage
Every trade taken
Average Win
Average Loss
Maximal DD , etc.
We have individually optimised each pair to ensure this is the case and hard coded these parameters into the strategy. All you need to do is flick between the pairs - the strategy will then identify the pair you are on and change the parameters to suit in the background.
Whilst a trade is open, the strategy will convert all candles to the relevant colour - Green for an uptrend and Red for a downtrend (all customisable).
We find this is helpful for traders psychology - not getting 'spooked' by other candle colours, affecting your decision making.
When a new signal is valid, 'POW BUY' or 'POW SELL' will be displayed on the first candle open for entry. As well as this, you will also have the trade label print which will display the following;
- EP – Entry price
- SL – Stop loss
- TP – Take Profit
- Lot size
The trade information printed will also tell you the pip values of your stop loss and take profit based on how far away they are from the trade entry price.
The lot size printed is customisable and unique to your account- within the strategy settings you can simply input your account balance, currency and risk approach which includes a fixed risk amount, fixed lot size or a fixed percentage.
This removes the need for 3rd party apps or websites to quickly calculate your specific risk on your trade. Thus saving you time and making sure you aren't 'guessing' with your lot size.
No one likes losing more than they thought.
The progress and initial challenges....
To start, our first version simply showed the buy and sell arrows when a trade was valid. However, this caused subjectivity with where we would place our stop loss and how we would manage the exit of the trade once we were in it. So, we identified a solid strategy for this was incorporating the Average True Range (ATR) for SL and TP options.
I was especially keen to add the SL and exit management so I could obtain solid back testing data to support my thoughts that 'this works'. Every trader requires confidence and belief in their strategy, without it you simply won't succeed or be disciplined in your execution.
The other challenge we all face is calculating the lot sizes of our trades right? So, it was important that we incorporated a lot size calculator - its all about making it easy when a trade is valid to enter without trying to calculate this accurately.
Lastly, when pairs are stuck in a range - this can be a testing period of 'chop' for a trend strategy, so we also incorporated the ADX function to enable us to set a threshold level to identify when the instrument is more likely to be trending.
What does it do?
Ultimately, tells you when to buy and sell - where to place your SL and when to exit. Whilst also ensuring your risk management is on point, by displaying your trading lot size. Also providing you with live back tested data at your finger tips thank you to the strategy tester.
How does it work?
This will be visible on your trading view charts once you get access. And will work across all your devices, the trading view website or the app on your phone for example.
You can also use Trading View alerts, so you won't miss a trade and can go about your day as normal without watching the screen. This will work on the Free version of TV, however, in order to benefit from more alerts and templates it makes sense to upgrade to a higher package.
How can it help you?
This will help give you a mechanical approach to your trading. This means, less decision making on your part, with the instant benefit of seeing the data you have at your fingertips thanks to the 'Strategy Tester' TV Function.
It will save you time, you don't need to be in front of your screen or completing any subjective analysis.
Integrated lot size calculator can ensure you are always accurate with your risk - either in percentage or a fixed amount of risk - whichever you prefer.
Understand Probability - this is the key one for me. Losing runs happen in any trading strategy. The great benefit here, is you can see them. How long were the losing runs? How can I prepare and plan my risk management around them are all fundamental keys to managing your emotions and being detached from your trades. No one wants to feel stressed or anxious when trading.
Customisable exit strategies - A specific TP for a 1:1 RR or 1:10 RR for example can be adjusted and you can see instantly how this affects the profitability.
The exit strategy options are shown below;
TP 1/2/3
FT - Follow Trend (no stop loss and follow's from Buys to Sells, Sell to Buy, etc.
SL + FT - SL present, but trade is held until a reverse signal is presented.
How good is it?
We have some really positive back testing data across a range of pairs and markets - equities and indices too.
Drop me a DM to see these and I'll be happy to share.
Below let me show you a screen shot of how this can work for you.
How do you access this?
Please visit our website for signup / purchase information in the first instance (the link is on our trading view signature) or send us a private message on here - its impossible to keep track of comments on our posts so to ensure we don't miss you, a private DM will be great please.
The Back test shown on this example is based on the Trading View mid price and also a realistic starting Capital of £10,000. This test result is also based on a 0.1% risk per trade, with a 5 tick spread and a commission of
Regards
Darren
Disclaimer alert.
Please remember past performance is exactly that - how our strategy performed over those dates tested, it is not obviously a guarantee of future performance. Most of our H1 data is valid from Jan 2017 to now - so 4+ years and data on 650+ trades per pair.
MrBS:Directional Movement Index [Trend Friend Strategy]This goes with my MrBS:DMI+ indicator. I originally combined them into one, but then you cannot set alerts based on what the ADX and DMI is doing, only strategy alerts, so separate ones have more flexibility and uses.
Indicator Version is found under "MrBS:Directional Movement Index " ()
//// THE IDEA
The majority of profits made in the market come from trending markets. Of course there are strategies that would say otherwise but for the majority of people, THE TREND IS YOUR FRIEND (until the end). The idea is to follow the trend, entering once it has established its self and exiting positions when the trend weakens. This strategy gives a rough idea of the returns produced from following purely the ADX signals. At first Heikin Ashi values were used for the calculation but the results show it's not that effective. The functionality to switch between calculation types has been left in, so we can uses HA candle data to generate signals from while looking at an OHLC chart, if we want to experiment. Due to the way strategies work, we are unable to get reliable results when running the strategy on the HA chart even if we are calculating the signals from the real OHLC values. It is best to always run strategies on standard charts.
When using this strategy, I look for confirmation of the signal based on stochastic (14:3:6) direction, reversal level of stochastic, and divergance, to add confidence and adjust position size accordingly. I am going to try and code some version of that in future updates, if anyone can help or has suggestions please drop me a message.
//// INDICATOR DETAILS
- The default settings are for optimized Daily charts, for 4 hour I would suggest a smoothing of 2.
- The default values used for calculation are the Real OHLC, we can change this to Heikin Ashi in the menu.
- The strategy enters a position when ADX crosses the threshold level, and closes the position when ADX starts to fall.
- There is a signal filter in the form of a 377 period Hull Moving Average, which the price must be above or bellow for long and short positions respectively.
- The strategy closes the position when a cross-under of the ADX and its 4 period EMA. This is an attempt to stay into positions longer as sometimes the ADX will fall for 1 bar and then keep rising, while the overall trend is strong. The downside to this is that we exit trades later and this affects our max drawdown.
Cyatophilum Scalper [BACKTEST]This indicator comes with a backtest and alert version. This is the backtest version. Its purpose is to create low timeframe and scalping strategies, by choosing from a list of built-in entry points which are described in detail below, and by configuring a risk management system to your liking.
Before diving into the entry points, I will explain the strategy and risk management settings.
These 3 settings allow to choose your strategy direction, and main behavior.
- Go Long ↗: activate or deactivate long entry points.
- Go Short ↘: activate or deactivate short entry points.
- Reversal strategy ↗↘↗↘: Activate this option will allow trades to reverse position from an opposite entry point. Keep it deactivated and trades will either wait a TakeProfit(TP) or StopLoss(SL) to be closed. When neither SL nor TP or set, this option is automatically activated.
StopLoss settings:
Both Long and Short SL can be activated and configured.
The base % price is the starting point of the stoploss, in a percentage of current price.
Trailing stop, when activated, works with 2 settings:
- % Price to Trigger: a percentage of current price the price should move in a bar to trigger a trailing movement.
- % Price Movement: the stoploss variation in a percentage of current price that moves on each bar.
TakeProfit settings:
Both Long and Short TP can be activated and configured.
The base % price is the value of the TP, in a percentage of current price.
Trailing Profit Deviation %: Percent deviation for the trailing take profit.
DCA:
DCA stands for Dollar Cost Average. The idea is to open additional orders from the base order so as to improve risk management.
These additional orders are also called Safety Orders. The indicator can handle up to 9 safety orders.
The strategy will exit either from a take profit based on percentage from base order or from a total volume percentage (Configurable in the parameters).
The steps spacing (space between each step) and safety orders volume (order size) can both scale by adding a scale multiplier.
By choosing from the base strategy dropdown menu, the indicator will generate entry points.
1. BUY SELL:
-> Low timeframes spot trading, with simple buy and sell orders.
How it works:
The indicator used is a combination of QQE (Atr based trend following indicator) and RMA 100 trendline.
I think the QQE does a great job in low timeframes because it is not impacted by the noise.
The RMA which is the moving average used in the RSI, will help giving confirmation to the entry points.
How to use:
It is meant to be used as a reversal strategy, but you can add a TP or SL if you want.
When comparing to Buy & Hold, make sure to deactivate the "Short results in the backtest" setting.
2. TREND SCALPING
-> A strategy for low timeframes trading.
How it works:
The strategy creates high volatility entries filtered by a duo convergence of adaptive trendlines (Adaptive HULL MA using the chart's resolution, Adaptive Tilson T3 using 1H resolution) and a higher timeframe (1H) RSI filter (long threshold: 70, short threshold: 40, RSI length: 10).
How to use:
Must be used on charts with a resolution smaller than 1H. Recommended: from 1m to 30m.
Must NOT be used as reversal strategy. Use it with a take profit and stop loss, and DCA if you can.
Sample risk management settings:
3. Support/Resistance BREAKOUTS
-> Trade low timeframes pivot points breakouts.
How it works:
The indicator calculates the 100 previous bars swing high and low. Any break above high or below low will trigger an entry point.
The entry is however filtered by an Adaptive Tilson T3 Trendline, an ADX 30 minimum threshold and a minimum average volume threshold.
How to use:
I recommend to click "Reversal" Strategy and set a Takeprofit target.
Find the best timeframe between 1m and 30m using the backtest version.
Example here with BTCUSDTPERP on 15m:
4. AGGRESSIVE SCALPING
-> Lots of trades in low timeframes.
How it works:
Created using Cyato AI, Higher/Lower Highs and Lows and 2 HULLMA crosses as entries, and 2 Adaptive Tilson T3 as trendfilter, a 25 ADX threshold filter and a volume filter.
How to use:
Recommended Risk Management settings: Takeprofit, Stoploss and DCA (Safety orders).
Find which timeframe work the best from 30 min and below. Should not be used above 30 min since this is the resolution for the MTF Tilson.
How to create Strategy Alerts:
Write your alert messages for EXIT, LONG and SHORT orders in the settings (Backtest section).
Then click add alert, and in the alert message, write the following:
{{strategy.order.alert_message}}
BACKTEST PARAMETERS
- Inital capital: 10 000$
- Base order size: 0.1 contract (0.1 btc)
- Safety order size: 0.1 contract (0.1 btc)
- Commission: 0.1%
- Slippage: 100 ticks
Oldest trade: 2020-08-31
Backtest Period: From 2020-08-31 to 2020-11-12
Configuration used: see the live chart configuration panel at the top.
To gain access to this paid indicator, please use the link below.
Combo Backtest 123 Reversal & EMA & MA Crossover This is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
The Moving Average Crossover trading strategy is possibly the most popular
trading strategy in the world of trading. First of them were written in the
middle of XX century, when commodities trading strategies became popular.
This strategy is a good example of so-called traditional strategies.
Traditional strategies are always long or short. That means they are never
out of the market. The concept of having a strategy that is always long or
short may be scary, particularly in today’s market where you don’t know what
is going to happen as far as risk on any one market. But a lot of traders
believe that the concept is still valid, especially for those of traders who
do their own research or their own discretionary trading.
This version uses crossover of moving average and its exponential moving average.
WARNING:
- For purpose educate only
- This script to change bars colors.
MACD Bull Crossover and RSI Oversold 5 Candles Ago-Long StrategyHello everyone, I've been having a great time perfecting this strategy for a few weeks now. I finally feel like it's time to release it to the public and share what I have been working on.
This strategy only enters a long trade when the MACD crosses over the signal line and the RSI was oversold looking back 5 candles ago. The logic behind this is to wait for RSI to enter the oversold territory, and then when the market starts to recovery the MACD will crossover telling us the sell off is over.
This strategy will close once these 2 conditions are met.
1. MACD Histogram is above 0 and MACD crosses under the signal line.
2. RSI was overbought 5 previous candles ago.
In the strategies settings, you'll be able to enable visual stop-loss and profit levels and change those levels to what you like, enable up to 5 EMA'S,
ADDONS That Affect Strategy:
* Enable visual stop-loss and profit levels as soon as a buy signal is triggered.
* Modify stop-loss and profit levels.
* Modify RSI oversold and RSI overbought levels.
* Modify MACD Fast and Slow moving average.
ADDONS That Do Not Affect Strategy:
* Enable up to 5 EMA's. (This will not affect strategy, and is the only purpose is for people who like following EMA's.)
Thank you for taking the time to try my strategy. I hope you have the best success. I will be making a short strategy, and alerts for this strategy soon. Follow me for updates!
XPloRR S&P500 Stock Market Crash Detection Strategy v2XPloRR S&P500 Stock Market Crash Detection Strategy v2
Long-Term Trailing-Stop strategy detecting S&P500 Stock Market Crashes/Corrections and showing Volatility as warning signal for upcoming crashes
Detecting or avoiding stock market crashes seems to be the 'Holy Grail' of strategies.
Since none of the strategies that I tested can beat the long term Buy&Hold strategy, the purpose was to detect a stock market crash on the S&P500 and step out in time to minimize losses and beat the Buy&Hold strategy. So beat the Buy&Hold strategy with around 10 trades. 100% capitalize sold trade into new trade.
With the default parameters the strategy generates 10262% profit (starting at 01/01/1962 until release date), with 10 closed trades, 100% profitable, while the Buy&Hold strategy only generates 3633% profit, so this strategy beats the Buy&Hold strategy by 2.82 times !
Also the strategy detects all major S&P500 stock market crashes and corrections since 1962 depending on the Trailing Stop Smoothness parameter, and steps out in time to cut losses and steps in again after the bottom has been reached. The 5 major crashes/corrections of 1987, 1990, 2001, 2008 and 2010 were successfully detected with the default parameters.
The script was first released on November 03 2019 and detected the Corona Crash on March 04 2020 with a Volatility crash-alert and a Sell crash-alert.
I have also created an Alerter Study Script based on the engine of this script, which generates Buy, Sell and Volatility signals.
If you are interested in this Alerter version script, please drop me a mail.
The script shows a lot of graphical information:
the Close value is shown in light-green. When the Close value is temporarily lower than the Buy value, the Close value is shown in light-red. This way it is possible to evaluate the virtual losses during the current trade.
the Trailing Stop value is shown in dark-green. When the Sell value is lower than the Buy value, the last color of the trade will be red (best viewed when zoomed)
the EMA and SMA values for both Buy and Sell signals are shown as colored graphs
the Buy signals are labeled in blue and the Sell signals are labeled in purple
the Volatility is shown below in green and red. The Alert Threshold (red) is default set to 2 (see Volatility Threshold parameter below)
How to use this Strategy?
Select the SPX (S&P500) graph and add this script to the graph.
Look in the strategy tester overview to optimize the values Percent Profitable and Net Profit (using the strategy settings icon, you can increase/decrease the parameters), then keep using these parameters for future Buy/Sell signals on the S&P500.
More trades don't necessarily generate more overall profit. It is important to detect only the major crashes and avoid closing trades on the smaller corrections. Bearing the smaller corrections generates a higher profit.
Watch out for the Volatility Alerts generated at the bottom (red). The Threshold can by changed by the Volatility Threshold parameter (default=2% ATR). In almost all crashes/corrections there is an alert ahead of the crash.
Although the signal doesn't predict the exact timing of the crash/correction, it is a clear warning signal that bearish times are ahead!
The correction in December 2018 was not a major crash but there was already a red Volatility warning alert. If the Volatility Alert repeats the next weeks/months, chances are higher that a bigger crash or correction is near. As can be seen in the graphic, the deeper the crash is, the higher and wider the red Volatility signal goes. So keep an eye on the red flag!
Here are the parameters:
Fast MA Buy: buy trigger when Fast MA Buy crosses over the Slow MA Buy value (use values between 10-20)
Slow MA Buy: buy trigger when Fast MA Buy crosses over the Slow MA Buy value (use values between 21-50)
Minimum Buy Strength: minimum upward trend value of the Fast MA Buy value (directional coefficient)(use values between 10-100)
Fast MA Sell: sell trigger when Fast MA Sell crosses under the Slow MA Sell value (use values between 10-20)
Slow MA Sell: sell trigger when Fast MA Sell crosses under the Slow MA Sell value (use values between 21-50)
Minimum Sell Strength: minimum downward trend value of the Fast MA Sell value (directional coefficient)(use values between 10-100)
Trailing Stop ATR: trailing stop % distance from the smoothed Close value (use values between 2-20)
Trailing Stop Smoothness: MA value for smoothing out the Trailing Stop close value
Buy On Start Date: force Buy on start date even without Buy signal (default: true)
Sell On End Date: force Sell on end date even without Sell signal (default: true)
Volatility EMA Period: MA value of the Volatility value (default 15)
Volatility Threshold: Threshold value to change volatility graph to red (default 2)
Volatility Graph Scaler: Scaling of the volatility graph (default 5)
Important : optimizing and using these parameters is no guarantee for future winning trades!
All Instrument Swing Trader with Pyramids, DCA and Leverage
Introduction
This is my most advanced Pine 4 script so far. It combines my range trader algorithms with my trend following pyramids all on a single interval. This script includes my beta tested DCA feature along with simulated leverage and buying power calculations. It has a twin study with several alerts. The features in this script allow you to experiment with different risk strategies and evaluate the approximate impact on your account capital. The script is flexible enough to run on instruments from different markets and at various bar intervals. This strategy can be run in three different modes: long, short and bidirectional. The bidirectional mode has two split modes (Ping Pong and BiDir). It also generates a summary report label with information not available in the TradingView Performance report such as Rate Of Return Standard Deviation and other Sharpe Ratio input values. Notable features include the following:
- Swing Trading Paradigm
- Uni or Bidirectional trading modes
- Calculation presets for Crypto, Stocks and Forex
- Conditional Minimum Profit
- Hard stop loss field
- Two types of DCA (Positive and Negative)
- Discretionary Pyramid levels with threshold adjustment and limiter
- Consecutive loss counter with preset and label
- Reentry loss limiter and trade entry caution fields
- Simulated Leverage and margin call warning label (approximation only)
- Buying power report labels (approximation only)
- Rate Of Return report with input values for Sharpe Ratio, Sortino and others
- Summary report label with real-time status indicators
- Trend follow bias modes (Its still range trading)
- Six anti-chop settings
- Single interval strategy to reduce repaint occurrence
This is a swing trading strategy so the behavior of this script is to buy on weakness and sell on strength. As such trade orders are placed in a counter direction to price pressure. What you will see on the chart is a short position on peaks and a long position on valleys. Just to be clear, the range as well as trends are merely illusions as the chart only receives prices. However, this script attempts to calculate pivot points from the price stream. Rising pivots are shorts and falling pivots are longs. I refer to pivots as a vertex in this script which adds structural components to the chart formation (point, sides and a base). When trading in “Ping Pong” mode long and short positions are intermingled continuously as long as there exists a detectable vertex. Unfortunately, this can work against your backtest profitability on long duration trends where prices continue in a single direction without pullback. I have designed various features in the script to compensate for this event. A well configured script should perform in a range bound market and minimize losses in a trend. For a range trader the trend is most certainly not your friend. I also have a trend following version of this script for those not interested in trading the range.
This script makes use of the TradingView pyramid feature accessible from the properties tab. Additional trades can be placed in the draw-down space increasing the position size and thereby increasing the profit or loss when the position finally closes. Each individual add on trade increases its order size as a multiple of its pyramid level. This makes it easy to comply with NFA FIFO Rule 2-43(b) if the trades are executed here in America. The inputs dialog box contains various settings to adjust where the add on trades show up, under what circumstances and how frequent if at all. Please be advised that pyramiding is an advanced feature and can wipe out your account capital if your not careful. You can use the “Performance Bond Leverage” feature to stress test your account capital with varying pyramid levels during the backtest. Use modest settings with realistic capital until you discover what you think you can handle. See the“Performance Bond Leverage” description for more information.
In addition to pyramiding this script employs DCA which enables users to experiment with loss recovery techniques. This is another advanced feature which can increase the order size on new trades in response to stopped out or winning streak trades. The script keeps track of debt incurred from losing trades. When the debt is recovered the order size returns to the base amount specified in the TV properties tab. The inputs for this feature include a limiter to prevent your account from depleting capital during runaway markets. The main difference between DCA and pyramids is that this implementation of DCA applies to new trades while pyramids affect open positions. DCA is a popular feature in crypto trading but can leave you with large “bags” if your not careful. In other markets, especially margin trading, you’ll need a well funded account and much experience.
To be sure pyramiding and dollar cost averaging is as close to gambling as you can get in respectable trading exchanges. However, if you are looking to compete in a Forex contest or want to add excitement to your trading life style those features could find a place in your strategies. Although your backtest may show spectacular gains don’t expect your live trading account to do the same. Every backtest has some measure to data mining bias. Please remember that.
This script is equipped with a consecutive loss counter. A limit field is provided in the report section of the input dialog box. This is a whole number value that, when specified, will generate a label on the chart when consecutive losses exceed the threshold. Every stop hit beyond this limit will be reported on a version 4 label above the bar where the stop is hit. Use the location of the labels along with the summary report tally to improve the adaptability of system. Don’t simply fit the chart. A good trading system should adapt to ever changing market conditions. On the study version the consecutive loss limit can be used to halt live trading on the broker side (managed manually).
This script can simulate leverage applied to your account capital. Basically, you want to know if the account capital you specified in the properties tab is sufficient to trade this script with the order size, pyramid and DCA parameters needed. TradingView does not halt trading when the account capital is depleted nor do you receive notification of such an event. Input the leverage you intend to trade with and simulate the stress on your account capital. When the check box labeled “Report Margin Call” is enabled a marker will plot on the chart at the location where the threshold was breached. Additionally, the Summary Report will indicated such a breach has occurred during the backtest. Please note that the margin calculation uses a performance bond contract model which is the same type of leverage applied to Forex accounts. This is not the same leverage as stock margin accounts since shares are not actually borrowed. It is also not applicable to futures contracts since we do not calculate maintenance margin. Also note that the account margin and buying power are calculated using the U.S. Dollar as a funding currency. Margin rules across the globe vary considerably so use this feature as an approximation. The “Report Margin Call” plot only appears on negative buying power which is well beyond the NFA enforced margin closeout price. Vary the order size and account capital and activate the buying power plot to get as close as you can to the desired margin call threshold. Also keep in mind that rollover fees, commissions, spreads, etc affect the margin call in actual live trading. This feature does not include any of those costs.
Inputs
The script input dialog box is divided into five sections. The last section, Section 5, contains all of the script reporting options. Notable reporting options are the inputs which provide support for calculating actual Sharpe Ratios and other risk / performance metrics. The TradingView performance report does not produce a scalable Sharpe Ratio which is unfortunate considering the limited data supplied to the backtest. Three report fields made available in this section are intended to enable users to measure the performance of this script using various industry standard risk metrics. In particular, The Sharpe Ratio, Sortino Ratio, Alpha Calculation, Beta Calculation, R-Squared and Monthly Standard Deviation. The following fields are dedicated to this effort:
– ROR Sample Period - Integer number which specifies the rate of return period. This number is a component of the Sharpe Ratio and determines the number of sample periods divisible in the chart data. The number specified here is the length of the period measured in bar intervals. Since the quantity of TradingView historical data is limited this number should reflect the scalar value applied to your Sharpe calculation. When the checkbox “Report Period ROR” is enabled red boxes plot on the dates corresponding to the ROR sample period. The red boxes display information useful in calculating various risk and performance models. Ongoing buying power is included in the period report which is especially useful in assessing the DCA stress on account capital. Important: When the “ROR Sample Period” is specified the script computes the ROR mean value and displays the result in the summary report label on the live end of the chart. Use this number to calculate the historical standard deviation of period returns.
– Return Mean Value - This is the ROR mean value which is displayed in the summary report field “ROR Mean”. Enter the value shown in the summary report here in order to calculate the standard deviation of returns. Once calculated the result is displayed in the summary report field “Standard Dev”. Please note that ROR and standard deviation are calculated on the quote currency of the chart and not the account currency. If you intend to calculate risk metrics based on other denominated returns use the period calculations in a spreadsheet. Important: Do not change the account denomination on the properties tab simply to force a dollar calculation. It will alter the backtest itself since the minimum profit, stop-loss and other variables are always measured in the quote currency of the chart.
– Report Period ROR - This checkbox is used to display the ROR period report which plots a red label above the bars corresponding to the ROR sample period. The sample period is defined by the value entered into the “ROR Sample Period” field. This checkbox only determines if the period labels plot on the chart. It does not enable or disable the ROR calculation itself. Please see input description“ROR Sample Period” for a detailed description of this feature.
Design
This script uses twelve indicators on a single time frame. The original trading algorithms are a port from a much larger program on another trading platform. I’ve converted some of the statistical functions to use standard indicators available on TradingView. The setups make heavy use of the Hull Moving Average in conjunction with EMAs that form the Bill Williams Alligator as described in his book “New Trading Dimensions” Chapter 3. Lag between the Hull and the EMAs form the basis of the entry and exit points. The vertices are calculated using one of five featured indicators. Each indicator is actually a composite of calculations which produce a distinct mean. This mathematical distinction enables the script to be useful on various instruments which belong to entirely different markets. In other words, at least one of these indicators should be able generate pivots on an arbitrarily selected instrument. Try each one to find the best fit.
The entire script is around 2200 lines of Pine code which pushes the limits of what can be created on this platform given the TradingView maximums for: local scopes, run-time duration and compile time. This script incorporates code from both my range trader and trend following published programs. Both have been in development for nearly two years and have been in beta test for the last several months. During the beta test of the range trading script it was discovered that by widening the stop and delaying the entry, add on trading opportunities appeared on the chart. I determined that by sacrificing a few minor features code space could be made available for pyramiding capability in the range trader. The module has been through several refactoring passes and makes extensive use of ternary statements. As such, It takes a full three minutes to compile after adding it to a chart. Please wait for the hovering dots to disappear before attempting to bring up the input dialog box. For the most part the same configuration settings for the range script can be applied to this script.
Inputs to the script use cone centric measurements in effort to avoid exposing adjustments to the various internal indicators. The goal was to keep the inputs relevant to the actual trade entry and exit locations as opposed to a series of MA input values and the like. As a result the strategy exposes over 70 inputs grouped into long or short sections. Inputs are available for the usual minimum profit and stop-loss as well as safeguards, trade frequency, pyramids, DCA, modes, presets, reports and lots of calibrations. The inputs are numerous, I know. Unfortunately, at this time, TradingView does not offer any other method to get data in the script. The usual initialization files such as cnf, cfg, ini, json and xml files are currently unsupported.
I have several example configuration settings that I use for my own trading. They include cryptocurrencies and forex instruments on various time frames.
Indicator Repainting and Anomalies
Indicator repainting is an industry wide problem which mainly occurs when you mix backtest data with real-time data. It doesn't matter which platform you use some form of this condition will manifest itself on your chart over time. The critical aspect being whether live trades on your broker’s account continue to match your TradingView study.
Based on my experience with Pine, most of the problems stem from TradingView’s implementation of multiple interval access. Whereas most platforms provide a separate bar series for each interval requested, the Pine language interleaves higher time frames with the primary chart interval. The problem is exacerbated by allowing a look-ahead parameter to the Security function. The goal of my repaint prevention is simply to ensure that my signal trading bias remains consistent between the strategy, study and broker. That being said this is what I’ve done address this issue in this script:
1. This script uses only 1 time frame. The chart interval.
2. Every entry and exit condition is evaluated on closed bars only.
3. No security functions are called to avoid a look-ahead possibility.
4. Every contributing factor specified in the TradingView wiki regarding this issue has been addressed.
5. Entry and exit setups are not reliant on crossover conditions.
6. I’ve run a 10 minute chart live for a week and compared it to the same chart periodically reloaded. The two charts were highly correlated with no instances of completely opposite real-time signals. I do have to say that there were differences in the location of some trades between the backtest and the study. But, I think mostly those differences are attributable to trading off closed bars in the study and the use of strategy functions in the backtest.
The study does indeed bring up the TV warning dialog. The only reason for this is because the script uses an EMA indicator which according to TradingView is due to “peculiarities of the algorithm”. I use the EMA for the Bill Williams Alligator so there is no way to remove it.
One issue that comes up when comparing the strategy with the study is that the strategy trades show on the chart one bar later than the study. This problem is due to the fact that “strategy.entry()” and “strategy_exit()” do not execute on the same bar called. The study, on the other hand, has no such limitation since there are no position routines.
Please be aware that the data source matters. Cryptocurrency has no central tick repository so each exchange supplies TradingView its feed. Even though it is the same symbol the quality of the data and subsequently the bars that are supplied to the chart varies with the exchange. This script will absolutely produce different results on different data feeds of the same symbol. Be sure to backtest this script on the same data you intend to receive alerts for. Any example settings I share with you will always have the exchange name used to generate the test results.
Usage
The following steps provide a very brief set of instructions that will get you started but will most certainly not produce the best backtest. A trading system that you are willing to risk your hard earned capital will require a well crafted configuration that involves time, expertise and clearly defined goals. As previously mentioned, I have several example configs that I use for my own trading that I can share with you. To get hands on experience in setting up your own symbol from scratch please follow the steps below.
The input dialog box contains over 70 inputs separated into five sections. Each section is identified as such with a makeshift separator input. There are three main areas that must to be configured: long side, short side and settings that apply to both. The rest of the inputs apply to pyramids, DCA, reporting and calibrations. The following steps address these three main areas only. You will need to get your backtest in the black before moving on to the more advanced features.
Step 1. Setup the Base currency and order size in the properties tab.
Step 2. Select the calculation presets in the Instrument Type field.
Step 3. Select “No Trade” in the Trading Mode field.
Step 4. Select the Histogram indicator from Section 2. You will be experimenting with different ones so it doesn’t matter which one you try first.
Step 5. Turn on Show Markers in Section 2.
Step 6. Go to the chart and checkout where the markers show up. Blue is up and red is down. Long trades show up along the red markers and short trades on the blue.
Step 7. Make adjustments to “Base To Vertex” and “Vertex To Base” net change and roc in Section 3. Use these fields to move the markers to where you want trades to be.
Step 8. Try a different indicator from Section 2 and repeat Step 7 until you find the best match for this instrument on this interval. This step is complete when the Vertex settings and indicator combination produce the most favorable results.
Step 9. Go to Section 3 and enable “Apply Red Base To Base Margin”.
Step 10. Go to Section 4 and enable “Apply Blue Base To Base Margin”.
Step 11. Go to Section 2 and adjust “Minimum Base To Base Blue” and “Minimum Base To Base Red”. Observe the chart and note where the markers move relative to each other. Markers further apart will produce less trades but will reduce cutoffs in “Ping Pong” mode.
Step 12. Return to Section 3 and 4 and turn off “Base To Base Margin” which was enabled in steps 9 and 10.
Step 13. Turn off Show Markers in Section 2.
Step 14. Put in your Minimum Profit and Stop Loss in the first section. This is in pips or currency basis points (chart right side scale). Percentage is not currently supported. This is a fixed value minimum profit and stop loss. Also note that the profit is taken as a conditional exit on a market order not a fixed limit. The actual profit taken will almost always be greater than the amount specified (due to the exit condition). The stop loss, on the other hand, is indeed a hard number which is executed by the TradingView broker simulator when the threshold is breached. On the study version, the stop is executed at the close of the bar.
Step 15. Return to step 3 and select a Trading Mode (Long, Short, BiDir, Ping Pong). If you are planning to trade bidirectionally its best to configure long first then short. Combine them with “BiDir” or “Ping Pong” after setting up both sides of the trade individually. The difference between “BiDir” and “Ping Pong” is that “Ping Pong” uses position reversal and can cut off opposing trades less than the specified minimum profit. As a result “Ping Pong” mode produces the greatest number of trades.
Step 16. Take a look at the chart. Trades should be showing along the markers plotted earlier.
Step 17. Make adjustments to the Vertex fields in Section 2 until the TradingView performance report is showing a profit. This includes the “Minimum Base To Base” fields. If a profit cannot be achieved move on to Step 18. Other adjustments may make a crucial difference.
Step 18. Improve the backtest profitability by adjusting the “Entry Net Change” and “Entry ROC” in Section 3 and 4.
Step 19. Enable the “Mandatory Snap” checkbox in Section 3 and 4 and adjust the “Snap Candle Delta” and “Snap Fractal Delta” in Section 2. This should reduce some chop producing unprofitable reversals.
Step 20. Increase the distance between opposing trades by adding an “Interleave Delta” in Sections 3 and 4. This is a floating point value which starts at 0.01 and typically does not exceed 2.0.
Step 21. Increase the distance between opposing trades even further by adding a “Decay Minimum Span” in Sections 3 and 4. This is an absolute value specified in the symbol’s quote currency (right side scale of the chart). This value is similar to the minimum profit and stop loss fields in Section 1.
Step 22. Improve the backtest profitability by adjusting the “Sparse Delta” in Section 3 and 4.
Step 23. Improve the backtest profitability by adjusting the “Chase Delta” in Section 3 and 4.
Step 24. Improve the backtest profitability by adjusting the “Adherence Delta” in Section 3 and 4. This field requires the “Adhere to Rising Trend” checkbox to be enabled.
Step 25. Try each checkbox in Section 3 and 4. See if it improves the backtest profitability. The “Caution Lackluster” checkbox only works when “Caution Mode” is enabled.
Step 26. Enable the reporting conditions in Section 5. Look for long runs of consecutive losses or high debt sequences. These are indications that your trading system cannot withstand sudden changes in market sentiment.
Step 27. Examine the chart and see that trades are being placed in accordance with your desired trading goals. This is an important step. If your desired model requires multiple trades per day then you should be seeing hundreds of trades on the chart. Alternatively, you may be looking to trade fewer steep peaks and deep valleys in which case you should see trades at major turning points. Don’t simply settle for what the backtest serves you. Work your configuration until the system aligns with your desired model. Try changing indicators and even intervals if you cannot reach your simulation goals. Generally speaking, the histogram and Candle indicators produce the most trades. The Macro indicator captures the tallest peaks and valleys.
Step 28. Apply the backtest settings to the study version and perform forward testing.
This script is open for beta testing. After successful beta test it will become a commercial application available by subscription only. I’ve invested quite a lot of time and effort into making this the best possible signal generator for all of the instruments I intend to trade. I certainly welcome any suggestions for improvements. Thank you all in advance.
One final note. I'm not a fan of having the Performance Overview (blue wedge) automatically show up at the end of the publish page since it could be misleading. On the EUR/USD backtest showing here I used a minimum profit of 65 pips, a stop of 120 pips, the candle indicator and a 5 pyramid max value. Also Mark Pyramid Levels (blue triangles) are enabled along with a 720 ROR Sample Period (red labels).
Strategy VS Buy & HoldSUMMARY:
A strategy wrapper that makes a detailed and visual comparison between a given strategy and the buy & hold returns of the traded security.
DESCRIPTION:
TradingView has a "Buy & Hold Return" metric in the strategy tester that is often enough to assess how our strategy compares to a simple buy hold. However, one may want more information on how and when your strategy beats or is beaten by a simple buy & hold strategy. This script aims to show such detail by providing a more comprehensive metrics and charting the profit/loss of the given strategy against buy & hold.
As seen in the script, it plots/draws 4 elements:
1) Strategy P/L: strategy net profit + strategy open profit
2) Buy & Hold P/L: unrealized return
3) Difference: Strategy P/L - Buy & Hold P/L
4) Strategy vs Buy Hold Stats
> Percent of bars strategy P/L is above Buy & Hold
> Percent of bars strategy P/L is below Buy & Hold
> All Time Average Difference
ADJUSTABLE PARAMETERS:
All labels/panels can be disabled by unchecking these two options:
>bnh_info_panel = input(true, title='Enable Info Panel')
>bnh_indicator_panel = input(true, title='Enable Indicator Panel')
Comparison Date Range can be changed to better isolate specific areas:
>From Year, From Month, From Day
default: 1970 01 01
>To Year, To Month, To Day
default: 2050 12 31
Default settings basically covers all historical data.
HOW TO USE:
The default script contains a simple 50-200 SMA cross strategy, just delete and replace it. Those are everything between these lines:
/////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////STRATEGY SCRIPT START//////////////////////////////////
(STRATEGY SCRIPT GOES HERE)
//////////////////////////////STRATEGY SCRIPT END////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
Removing all plots and drawings from your strategy is advisable.
If you are going to use the Comparison Date Range, apply "bnh_timeCond" to your strategy to align the dates. A sample on how it’s applied can be seen on the Placeholder MA cross strategy.
Note: bnh_timeCond returns a boolean series
Backtesting on Non-Standard Charts: Caution! - PineCoders FAQMuch confusion exists in the TradingView community about backtesting on non-standard charts. This script tries to shed some light on the subject in the hope that traders make better use of those chart types.
Non-standard charts are:
Heikin Ashi (HA)
Renko
Kagi
Point & Figure
Range
These chart types are called non-standard because they all transform market prices into synthetic views of price action. Some focus on price movement and disregard time. Others like HA use the same division of bars into fixed time intervals but calculate artificial open, high, low and close (OHLC) values.
Non-standard chart types can provide traders with alternative ways of interpreting price action, but they are not designed to test strategies or run automated traded systems where results depend on the ability to enter and exit trades at precise price levels at specific times, whether orders are issued manually or algorithmically. Ironically, the same characteristics that make non-standard chart types interesting from an analytical point of view also make them ill-suited to trade execution. Why? Because of the dislocation that a synthetic view of price action creates between its non-standard chart prices and real market prices at any given point in time. Switching from a non-standard chart price point into the market always entails a translation of time/price dimensions that results in uncertainty—and uncertainty concerning the level or the time at which orders are executed is detrimental to all strategies.
The delta between the chart’s price when an order is issued (which is assumed to be the expected price) and the price at which that order is filled is called slippage . When working from normal chart types, slippage can be caused by one or more of the following conditions:
• Time delay between order submission and execution. During this delay the market may move normally or be subject to large orders from other traders that will cause large moves of the bid/ask levels.
• Lack of bids for a market sell or lack of asks for a market buy at the current price level.
• Spread taken by middlemen in the order execution process.
• Any other event that changes the expected fill price.
When a market order is submitted, matching engines attempt to fill at the best possible price at the exchange. TradingView strategies usually fill market orders at the opening price of the next candle. A non-standard chart type can produce misleading results because the open of the next candle may or may not correspond to the real market price at that time. This creates artificial and often beneficial slippage that would not exist on standard charts.
Consider an HA chart. The open for each candle is the average of the previous HA bar’s open and close prices. The open of the HA candle is a synthetic value, but the real market open at the time the new HA candle begins on the chart is the unrelated, regular open at the chart interval. The HA open will often be lower on long entries and higher on short entries, resulting in unrealistically advantageous fills.
Another example is a Renko chart. A Renko chart is a type of chart that only measures price movement. The purpose of a Renko chart is to cluster price action into regular intervals, which consequently removes the time element. Because Trading View does not provide tick data as a price source, it relies on chart interval close values to construct Renko bricks. As a consequence, a new brick is constructed only when the interval close penetrates one or more brick thresholds. When a new brick starts on the chart, it is because the previous interval’s close was above or below the next brick threshold. The open price of the next brick will likely not represent the current price at the time this new brick begins, so correctly simulating an order is impossible.
Some traders have argued with us that backtesting and trading off HA charts and other non-standard charts is useful, and so we have written this script to show traders what happens when order fills from backtesting on non-standard charts are compared to real-world fills at market prices.
Let’s review how TV backtesting works. TV backtesting uses a broker emulator to execute orders. When an order is executed by the broker emulator on historical bars, the price used for the fill is either the close of the order’s submission bar or, more often, the open of the next. The broker emulator only has access to the chart’s prices, and so it uses those prices to fill orders. When backtesting is run on a non-standard chart type, orders are filled at non-standard prices, and so backtesting results are non-standard—i.e., as unrealistic as the prices appearing on non-standard charts. This is not a bug; where else is the broker emulator going to fetch prices than from the chart?
This script is a strategy that you can run on either standard or non-standard chart types. It is meant to help traders understand the differences between backtests run on both types of charts. For every backtest, a label at the end of the chart shows two global net profit results for the strategy:
• The net profits (in currency) calculated by TV backtesting with orders filled at the chart’s prices.
• The net profits (in currency) calculated from the same orders, but filled at market prices (fetched through security() calls from the underlying real market prices) instead of the chart’s prices.
If you run the script on a non-standard chart, the top result in the label will be the result you would normally get from the TV backtesting results window. The bottom result will show you a more realistic result because it is calculated from real market fills.
If you run the script on a normal chart type (bars, candles, hollow candles, line, area or baseline) you will see the same result for both net profit numbers since both are run on the same real market prices. You will sometimes see slight discrepancies due to occasional differences between chart prices and the corresponding information fetched through security() calls.
Features
• Results shown in the Data Window (third icon from the top right of your chart) are:
— Cumulative results
— For each order execution bar on the chart, the chart and market previous and current fills, and the trade results calculated from both chart and market fills.
• You can choose between 2 different strategies, both elementary.
• You can use HA prices for the calculations determining entry/exit conditions. You can use this to see how a strategy calculated from HA values can run on a normal chart. You will notice that such strategies will not produce the same results as the real market results generated from HA charts. This is due to the different environment backtesting is running on where for example, position sizes for entries on the same bar will be calculated differently because HA and standard chart close prices differ.
• You can choose repainting/non-repainting signals.
• You can show MAs, entry/exit markers and market fill levels.
• You can show candles built from the underlying market prices.
• You can color the background for occurrences where an order is filled at a different real market price than the chart’s price.
Notes
• On some non-standard chart types you will not obtain any results. This is sometimes due to how certain types of non-standard types work, and sometimes because the script will not emit orders if no underlying market information is detected.
• The script illustrates how those who want to use HA values to calculate conditions can do so from a standard chart. They will then be getting orders emitted on HA conditions but filled at more realistic prices because their strategy can run on a standard chart.
• On some non-standard chart types you will see market results surpass chart results. While this may seem interesting, our way of looking at it is that it points to how unreliable non-standard chart backtesting is, and why it should be avoided.
• In order not to extend an already long description, we do not discuss the particulars of executing orders on the realtime bar when using non-standard charts. Unless you understand the minute details of what’s going on in the realtime bar on a particular non-standard chart type, we recommend staying away from this.
• Some traders ask us: Why does TradingView allow backtesting on non-standard chart types if it produces unrealistic results? That’s somewhat like asking a hammer manufacturer why it makes hammers if hammers can hurt you. We believe it’s a trader’s responsibility to understand the tools he is using.
Takeaways
• Non-standard charts are not bad per se, but they can be badly used.
• TV backtesting on non-standard charts is not broken and doesn’t require fixing. Traders asking for a fix are in dire need of learning more about trading. We recommend they stop trading until they understand why.
• Stay away from—even better, report—any vendor presenting you with strategies running on non-standard charts and implying they are showing reliable results.
• If you don’t understand everything we discussed, don’t use non-standard charts at all.
• Study carefully how non-standard charts are built and the inevitable compromises used in calculating them so you can understand their limitations.
Thanks to @allanster and @mortdiggiddy for their help in editing this description.
Look first. Then leap.
Donchian Channel StrategyIf you've read , you must be familiar with Donchian Channel Strategy. This is the second time I share this strategy because of not using English in the last publishment.
Actually, there is a build-in strategy called Channel Break Out Strategy. It is a kind of simplified version of Donchain Channel Strategy. The strategy I share today is complete Donchain Channel Strategy.
There are two differences between this strategy and Build-in Channel Break Out Strategy:
1. Channel Break Out Strategy is always in the market. According to the Channel Break Out Strategy, assuming that you held a long position at first, you will open a short position immediately if you close the long position. It is my script that makes an improvement in this aspect. You can make a distinction between closing long position and open a short position in my script and the time for entering and exiting market can be adjusted by yourself based on 4 parameters.
2. Market trends are taken into account in my script. A short Exponential Moving Average and a long Exponential Moving Average are added to this strategy. You can open a long position only when short EMA is higher then long EMA. On the contrary, short EMA being lower then long EMA is a prerequisite for open a short position.
You can adjust 4 parameters in my script. In the end, I'd like to remind you that different combination of parameters applies to different time period. The default parameters may fit 30M candle and you can try combination of 8-4-5-15 in 1D candle. Of course, you can try another combination of parameters in other time period.
I will write some simple strategies in the future if time allows. So, welcome to follow me if my script can profit you. Happy trading!
Understanding order sizestype: properties manipulation, no programming needed
time required: 15minutes, at least
level: medium (need to know contracts, trading pairs)
A strategy can "appear" to work or be broken depending on the pile of cash that is working on. This amount is defined in the strat properties, under "order size".
For noobs (like me) this is very confusing at first :)
A strat opens/closes positions using units, a generic measure for the chart being operated on. Thes "units" can be a fixed amount of cash, a fixed amount of contracts, or a floating amount based on the last profits made. I recommend checking my previous strat to figure the case of contracts .
So, any trading price is the amount of "things" you get for some "cash". The things are the first unit, the "cash" is the second. Some examples:
XAU/USD - 1 xau oz is worth x dollars
BTC/USD - 1 bitcoin is worth x dollars
GBP/EUR - 1 pound is worth x euros
To add to confusion, a lot of markets the "unit size" is different from what the strat thinks it is. An options contract is 100 shares(the unit), 1 xau contract is 10 oz(units), 1 eur/usd contract is 100k euros and so on... so, after figuring out how the sizes work in a strat, then the sizes must be adapted for the specific market in question.
The choice os using the ETHUSD pair is because:
1 - you can buy 1eth, unlike a gold contract for example, so 1 "unit" = 1 eth, easier to get
2 - ETH is around 12 bucks, wich gives round numbers on the math, easier to wrap the brains around :)
3- is an unusual pair, so the regular contract sizes don't apply, and the brain is not conditioned to work inside the box ;)
You will have to access the script properties, to change the values. As these values are changed you will see exactly the differences in the values of the strat.
Text is too long, check the comments for all the cases
Understanding contract sizes in a strategyThis simple strat fires up on green bars, down on red bars. cannot get any simpler. So, it's a good example to check how returns are calculated.
First, the internal firing mechanism for the strategy.entry function is something hardcore. As result, the entry points can be confusing, and seem to appear in a wrong bar (as the 2nd and 3rd signals are good examples), but i'll put that aside to keep it simple. And, because i don't yet get it myself ;)
The example is simple, so that numbers can be followed easy. Chart in BTC/USD, so USD is the "base" currency used by strat to calculate. A contract/unit is the value of 1 unit in base currency. 1 Apple share is 600$, 1 bitcoin is 600$, 1 oz gold is 1330 bucks. So, here in each bar, the value of 1 contract is the value of the BTC in USD. simple as that.
The strat properties, can be passed as input fields (line 2) or accessed/changed in the right click->properties pop-up. To make it easier, initial capital is 1000 bucks, and "order size" is 1 contract. This means that the strat will open a position of 1 BTC when it fires. Value "Initial capital" makes no difference at all, at least with these choices. It's just for show. Try to put 1$ and 1 contract, the strat will still trade anyway. It manages to trade 1 contract(or BTC) values at ~600$, with a single dollar. nice ;)
Check the chart. see the little blue "BarUp +1" ? that's it, strat goes long 1 BTC. there's a little blue triangle on the bar, points to the value of entry.
Then later, on second move, the "BarDn -2", the strat goes short 2BTC. 1BTC to close the long +1 more to open a short.
The profit here is the difference between the value of the long opening and the long closing. The extra BTC (shorted) is part of the next position. Since this dumb strat just reverses the direction, there are always +2, -2 , +2.... 1 to close previous position, 1 to open another. At the strategy tester tab, the option "list of trades" shows in details each of the moves
Checking each move and comparing what we see with the chart itself helps to achieve ilumination :)
Bonus feature: as soon as you get it, try to increase the option "pyramiding" and see how the strat adds more contracts, and how it reverses the positions. sometimes it even makes sense!!!! :)
Enhanced Ichimoku Cloud Strategy V1 [Quant Trading]Overview
This strategy combines the powerful Ichimoku Kinko Hyo system with a 171-period Exponential Moving Average (EMA) filter to create a robust trend-following approach. The strategy is designed for traders seeking to capitalize on strong momentum moves while using the Ichimoku cloud structure to identify optimal entry and exit points.
This is a patient, low-frequency trading system that prioritizes quality over quantity. In backtesting on Solana, the strategy achieved impressive results with approximately 3600% profit over just 29 trades, demonstrating its effectiveness at capturing major trend movements rather than attempting to profit from every market fluctuation. The extended parameters and strict entry criteria are specifically optimized for Solana's price action characteristics, making it well-suited for traders who prefer fewer, higher-conviction positions over high-frequency trading approaches.
What Makes This Strategy Original
This implementation enhances the traditional Ichimoku system by:
Custom Ichimoku Parameters: Uses non-standard periods (Conversion: 7, Base: 211, Lagging Span 2: 120, Displacement: 41) optimized for different market conditions
EMA Confirmation Filter: Incorporates a 171-period EMA as an additional trend confirmation layer
State Memory System: Implements a sophisticated memory system to track buy/sell states and prevent false signals
Dual Trade Modes: Offers both traditional Ichimoku signals ("Ichi") and cloud-based signals ("Cloud")
Breakout Confirmation: Requires price to break above the 25-period high for long entries
How It Works
Core Components
Ichimoku Elements:
-Conversion Line (Tenkan-sen): 7-period Donchian midpoint
-Base Line (Kijun-sen): 211-period Donchian midpoint
-Span A (Senkou Span A): Average of Conversion and Base lines, plotted 41 periods ahead
-Span B (Senkou Span B): 120-period Donchian midpoint, plotted 41 periods ahead
-Lagging Span (Chikou Span): Current close plotted 41 periods back
EMA Filter: 171-period EMA acts as a long-term trend filter
Entry Logic (Ichi Mode - Default)
A long position is triggered when ALL conditions are met:
Cloud Bullish: Span A > Span B (41 periods ago)
Breakout Confirmation: Current close > 25-period high
Ichimoku Bullish: Conversion Line > Base Line
Trend Alignment: Current close > 171-period EMA
State Memory: No previous buy signal is still active
Exit Logic
Positions are closed when:
Ichimoku Bearish: Conversion Line < Base Line
Alternative Cloud Mode
When "Cloud" mode is selected, the strategy uses:
Entry: Span A crosses above Span B with additional cloud and EMA confirmations
Exit: Span A crosses below Span B with cloud and EMA confirmations
Default Settings Explained
Strategy Properties
Initial Capital: $1,000 (realistic for average traders)
Position Size: 100% of equity (appropriate for backtesting single-asset strategies)
Commission: 0.1% (realistic for most brokers)
Slippage: 3 ticks (accounts for realistic execution costs)
Date Range: January 1, 2018 to December 31, 2069
Key Parameters
Conversion Periods: 7 (faster than traditional 9, more responsive to price changes)
Base Periods: 211 (much longer than traditional 26, provides stronger trend confirmation)
Lagging Span 2 Periods: 120 (custom period for stronger support/resistance levels)
Displacement: 41 (projects cloud further into future than standard 26)
EMA Period: 171 (long-term trend filter, approximately 8.5 months of daily data)
How to Use This Strategy
Best Market Conditions
Trending Markets: Works best in clearly trending markets where the cloud provides strong directional bias
Medium to Long-term Timeframes: Optimized for daily charts and higher timeframes
Volatile Assets: The breakout confirmation helps filter out weak signals in choppy markets
Risk Management
The strategy uses 100% equity allocation, suitable for backtesting single strategies
Consider reducing position size when implementing with real capital
Monitor the 25-period high breakout requirement as it may delay entries in fast-moving markets
Visual Elements
Green/Red Cloud: Shows bullish/bearish cloud conditions
Yellow Line: Conversion Line (Tenkan-sen)
Blue Line: Base Line (Kijun-sen)
Orange Line: 171-period EMA trend filter
Gray Line: Lagging Span (Chikou Span)
Important Considerations
Limitations
Lagging Nature: Like all Ichimoku strategies, signals may lag significant price moves
Whipsaw Risk: Extended periods of consolidation may generate false signals
Parameter Sensitivity: Custom parameters may not work equally well across all market conditions
Backtesting Notes
Results are based on historical data and past performance does not guarantee future results
The strategy includes realistic slippage and commission costs
Default settings are optimized for backtesting and may need adjustment for live trading
Risk Disclaimer
This strategy is for educational purposes only and should not be considered financial advice. Always conduct your own analysis and risk management before implementing any trading strategy. The unique parameter combinations used may not be suitable for all market conditions or trading styles.
Customization Options
Trade Mode: Switch between "Ichi" and "Cloud" signal generation
Short Trading: Option to enable short positions (disabled by default)
Date Range: Customize backtesting period
All Ichimoku Parameters: Fully customizable for different market conditions
This enhanced Ichimoku implementation provides a structured approach to trend following while maintaining the flexibility to adapt to different trading styles and market conditions.
Grid TLong V1The “Grid TLong V1” strategy is based on the classic Grid strategy, but in the mode of buying and selling in favor of the trend and only on Long. This allows to take advantage of large uptrend movements to maximize profits in bull markets. For this reason, excessively sideways or bearish markets may not be very conducive to this strategy.
Like our Grid strategies in favor of the trend, you can enter and exit with the balance with controlled risk, as the distance between each grid functions as a natural and adaptable stop loss and take profit. What differentiates it from bidirectional strategies is that Short uses a minimum amount of follow-through, so that the percentage distance between the grids is maintained.
In this version of the script the entries and exits can be chosen at market or limit , and are based on the profit or loss of the current position, not on the percentage change in price.
The user may also notice that the strategy setup is risk-controlled, because it risks 5% on each trade, has a fairly standard commission and modest initial capital, all in order to protect the strategy user from unrealistic results.
As with all strategies, it is strongly recommended to optimize the parameters for the strategy to be effective for each asset and for each time frame.
EMA 12/26 With ATR Volatility StoplossThe EMA 12/26 With ATR Volatility Stoploss
The EMA 12/26 With ATR Volatility Stoploss strategy is a meticulously designed systematic trading approach tailored for navigating financial markets through technical analysis. By integrating the Exponential Moving Average (EMA) and Average True Range (ATR) indicators, the strategy aims to identify optimal entry and exit points for trades while prioritizing disciplined risk management. At its core, it is a trend-following system that seeks to capitalize on price momentum, employing volatility-adjusted stop-loss mechanisms and dynamic position sizing to align with predefined risk parameters. Additionally, it offers traders the flexibility to manage profits either by compounding returns or preserving initial capital, making it adaptable to diverse trading philosophies. This essay provides a comprehensive exploration of the strategy’s underlying concepts, key components, strengths, limitations, and practical applications, without delving into its technical code.
=====
Core Philosophy and Objectives
The EMA 12/26 With ATR Volatility Stoploss strategy is built on the premise of capturing short- to medium-term price trends with a high degree of automation and consistency. It leverages the crossover of two EMAs—a fast EMA (12-period) and a slow EMA (26-period)—to generate buy and sell signals, which indicate potential trend reversals or continuations. To mitigate the inherent risks of trading, the strategy incorporates the ATR indicator to set stop-loss levels that adapt to market volatility, ensuring that losses remain within acceptable bounds. Furthermore, it calculates position sizes based on a user-defined risk percentage, safeguarding capital while optimizing trade exposure.
A distinctive feature of the strategy is its dual profit management modes:
SnowBall (Compound Profit): Profits from successful trades are reinvested into the capital base, allowing for progressively larger position sizes and potential exponential portfolio growth.
ZeroRisk (Fixed Equity): Profits are withdrawn, and trades are executed using only the initial capital, prioritizing capital preservation and minimizing exposure to market downturns.
This duality caters to both aggressive traders seeking growth and conservative traders focused on stability, positioning the strategy as a versatile tool for various market environments.
=====
Key Components of the Strategy
1. EMA-Based Signal Generation
The strategy’s trend-following mechanism hinges on the interaction between the Fast EMA (12-period) and Slow EMA (26-period). EMAs are preferred over simple moving averages because they assign greater weight to recent price data, enabling quicker responses to market shifts. The key signals are:
Buy Signal: Triggered when the Fast EMA crosses above the Slow EMA, suggesting the onset of an uptrend or bullish momentum.
Sell Signal: Occurs when the Fast EMA crosses below the Slow EMA, indicating a potential downtrend or the end of a bullish phase.
To enhance signal reliability, the strategy employs an Anchor Point EMA (AP EMA), a short-period EMA (e.g., 2 days) that smooths the input price data before calculating the primary EMAs. This preprocessing reduces noise from short-term price fluctuations, improving the accuracy of trend detection. Additionally, users can opt for a Consolidated EMA (e.g., 18-period) to display a single trend line instead of both EMAs, simplifying chart analysis while retaining trend insights.
=====
2. Volatility-Adjusted Risk Management with ATR
Risk management is a cornerstone of the strategy, achieved through the use of the Average True Range (ATR), which quantifies market volatility by measuring the average price range over a specified period (e.g., 10 days). The ATR informs the placement of stop-loss levels, which are set at a multiple of the ATR (e.g., 2x ATR) below the entry price for long positions. This approach ensures that stop losses are proportionate to current market conditions—wider during high volatility to avoid premature exits, and narrower during low volatility to protect profits.
For example, if a stock’s ATR is $1 and the multiplier is 2, the stop loss for a buy at $100 would be set at $98. This dynamic adjustment enhances the strategy’s adaptability, preventing stop-outs from normal market noise while capping potential losses.
=====
3. Dynamic Position Sizing
The strategy calculates position sizes to align with a user-defined Risk Per Trade, typically expressed as a percentage of capital (e.g., 2%). The position size is determined by:
The available capital, which varies depending on whether SnowBall or ZeroRisk mode is selected.
The distance between the entry price and the ATR-based stop-loss level, which represents the per-unit risk.
The desired risk percentage, ensuring that the maximum loss per trade does not exceed the specified threshold.
For instance, with a $1,000 capital, a 2% risk per trade ($20), and a stop-loss distance equivalent to 5% of the entry price, the strategy computes the number of units (shares or contracts) to ensure the total loss, if the stop loss is hit, equals $20. To prevent over-leveraging, the strategy includes checks to ensure that the position’s dollar value does not exceed available capital. If it does, the position size is scaled down to fit within the capital constraints, maintaining financial discipline.
=====
4. Flexible Capital Management
The strategy’s dual profit management modes—SnowBall and ZeroRisk—offer traders strategic flexibility:
SnowBall Mode: By compounding profits, traders can increase their capital base, leading to larger position sizes over time. This is ideal for those with a long-term growth mindset, as it harnesses the power of exponential returns.
ZeroRisk Mode: By withdrawing profits and trading solely with the initial capital, traders protect their gains and limit exposure to market volatility. This conservative approach suits those prioritizing stability over aggressive growth.
These options allow traders to tailor the strategy to their risk tolerance, financial goals, and market outlook, enhancing its applicability across different trading styles.
=====
5. Time-Based Trade Filtering
To optimize performance and relevance, the strategy includes an option to restrict trading to a specific time range (e.g., from 2018 onward). This feature enables traders to focus on periods with favorable market conditions, avoid historically volatile or unreliable data, or align the strategy with their backtesting objectives. By confining trades to a defined timeframe, the strategy ensures that performance metrics reflect the intended market context.
=====
Strengths of the Strategy
The EMA 12/26 With ATR Volatility Stoploss strategy offers several compelling advantages:
Systematic and Objective: By adhering to predefined rules, the strategy eliminates emotional biases, ensuring consistent execution across market conditions.
Robust Risk Controls: The combination of ATR-based stop losses and risk-based position sizing caps losses at user-defined levels, fostering capital preservation.
Customizability: Traders can adjust parameters such as EMA periods, ATR multipliers, and risk percentages, tailoring the strategy to specific markets or preferences.
Volatility Adaptation: Stop losses that scale with market volatility enhance the strategy’s resilience, accommodating both calm and turbulent market phases.
Enhanced Visualization: The use of color-coded EMAs (green for bullish, red for bearish) and background shading provides intuitive visual cues, simplifying trend and trade status identification.
=====
Limitations and Considerations
Despite its strengths, the strategy has inherent limitations that traders must address:
False Signals in Range-Bound Markets: EMA crossovers may generate misleading signals in sideways or choppy markets, leading to whipsaws and unprofitable trades.
Signal Lag: As lagging indicators, EMAs may delay entry or exit signals, causing traders to miss rapid trend shifts or enter trades late.
Overfitting Risk: Excessive optimization of parameters to fit historical data can impair the strategy’s performance in live markets, as past patterns may not persist.
Impact of High Volatility: In extremely volatile markets, wider stop losses may result in larger losses than anticipated, challenging risk management assumptions.
Data Reliability: The strategy’s effectiveness depends on accurate, continuous price data, and discrepancies or gaps can undermine signal accuracy.
=====
Practical Applications
The EMA 12/26 With ATR Volatility Stoploss strategy is versatile, applicable to diverse markets such as stocks, forex, commodities, and cryptocurrencies, particularly in trending environments. To maximize its potential, traders should adopt a rigorous implementation process:
Backtesting: Evaluate the strategy’s historical performance across various market conditions to assess its robustness and identify optimal parameter settings.
Forward Testing: Deploy the strategy in a demo account to validate its real-time performance, ensuring it aligns with live market dynamics before risking capital.
Ongoing Monitoring: Continuously track trade outcomes, analyze performance metrics, and refine parameters to adapt to evolving market conditions.
Additionally, traders should consider market-specific factors, such as liquidity and volatility, when applying the strategy. For instance, highly liquid markets like forex may require tighter ATR multipliers, while less liquid markets like small-cap stocks may benefit from wider stop losses.
=====
Conclusion
The EMA 12/26 With ATR Volatility Stoploss strategy is a sophisticated, systematic trading framework that blends trend-following precision with disciplined risk management. By leveraging EMA crossovers for signal generation, ATR-based stop losses for volatility adjustment, and dynamic position sizing for risk control, it offers a balanced approach to capturing market trends while safeguarding capital. Its flexibility—evident in customizable parameters and dual profit management modes—makes it suitable for traders with varying risk appetites and objectives. However, its limitations, such as susceptibility to false signals and signal lag, necessitate thorough testing and prudent application. Through rigorous backtesting, forward testing, and continuous refinement, traders can harness this strategy to achieve consistent, risk-adjusted returns in trending markets, establishing it as a valuable tool in the arsenal of systematic trading.
Dskyz (DAFE) Aurora Divergence – Quant Master Dskyz (DAFE) Aurora Divergence – Quant Master
Introducing the Dskyz (DAFE) Aurora Divergence – Quant Master , a strategy that’s your secret weapon for mastering futures markets like MNQ, NQ, MES, and ES. Born from the legendary Aurora Divergence indicator, this fully automated system transforms raw divergence signals into a quant-grade trading machine, blending precision, risk management, and cyberpunk DAFE visuals that make your charts glow like a neon skyline. Crafted with care and driven by community passion, this strategy stands out in a sea of generic scripts, offering traders a unique edge to outsmart institutional traps and navigate volatile markets.
The Aurora Divergence indicator was a cult favorite for spotting price-OBV divergences with its aqua and fuchsia orbs, but traders craved a system to act on those signals with discipline and automation. This strategy delivers, layering advanced filters (z-score, ATR, multi-timeframe, session), dynamic risk controls (kill switches, adaptive stops/TPs), and a real-time dashboard to turn insights into profits. Whether you’re a newbie dipping into futures or a pro hunting reversals, this strat’s got your back with a beginner guide, alerts, and visuals that make trading feel like a sci-fi mission. Let’s dive into every detail and see why this original DAFE creation is a must-have.
Why Traders Need This Strategy
Futures markets are a battlefield—fast-paced, volatile, and riddled with institutional games that can wipe out undisciplined traders. From the April 28, 2025 NQ 1k-point drop to sneaky ES slippage, the stakes are high. Meanwhile, platforms are flooded with unoriginal, low-effort scripts that promise the moon but deliver noise. The Aurora Divergence – Quant Master rises above, offering:
Unmatched Originality: A bespoke system built from the ground up, with custom divergence logic, DAFE visuals, and quant filters that set it apart from copycat clutter.
Automation with Precision: Executes trades on divergence signals, eliminating emotional slip-ups and ensuring consistency, even in chaotic sessions.
Quant-Grade Filters: Z-score, ATR, multi-timeframe, and session checks filter out noise, targeting high-probability reversals.
Robust Risk Management: Daily loss and rolling drawdown kill switches, plus ATR-based stops/TPs, protect your capital like a fortress.
Stunning DAFE Visuals: Aqua/fuchsia orbs, aurora bands, and a glowing dashboard make signals intuitive and charts a work of art.
Community-Driven: Evolved from trader feedback, this strat’s a labor of love, not a recycled knockoff.
Traders need this because it’s a complete, original system that blends accessibility, sophistication, and style. It’s your edge to trade smarter, not harder, in a market full of traps and imitators.
1. Divergence Detection (Core Signal Logic)
The strategy’s core is its ability to detect bullish and bearish divergences between price and On-Balance Volume (OBV), pinpointing reversals with surgical accuracy.
How It Works:
Price Slope: Uses linear regression over a lookback (default: 9 bars) to measure price momentum (priceSlope).
OBV Slope: OBV tracks volume flow (+volume if price rises, -volume if falls), with its slope calculated similarly (obvSlope).
Bullish Divergence: Price slope negative (falling), OBV slope positive (rising), and price above 50-bar SMA (trend_ma).
Bearish Divergence: Price slope positive (rising), OBV slope negative (falling), and price below 50-bar SMA.
Smoothing: Requires two consecutive divergence bars (bullDiv2, bearDiv2) to confirm signals, reducing false positives.
Strength: Divergence intensity (divStrength = |priceSlope * obvSlope| * sensitivity) is normalized (0–1, divStrengthNorm) for visuals.
Why It’s Brilliant:
- Divergences catch hidden momentum shifts, often exploited by institutions, giving you an edge on reversals.
- The 50-bar SMA filter aligns signals with the broader trend, avoiding choppy markets.
- Adjustable lookback (min: 3) and sensitivity (default: 1.0) let you tune for different instruments or timeframes.
2. Filters for Precision
Four advanced filters ensure signals are high-probability and market-aligned, cutting through the noise of volatile futures.
Z-Score Filter:
Logic: Calculates z-score ((close - SMA) / stdev) over a lookback (default: 50 bars). Blocks entries if |z-score| > threshold (default: 1.5) unless disabled (useZFilter = false).
Impact: Avoids trades during extreme price moves (e.g., blow-off tops), keeping you in statistically safe zones.
ATR Percentile Volatility Filter:
Logic: Tracks 14-bar ATR in a 100-bar window (default). Requires current ATR > 80th percentile (percATR) to trade (tradeOk).
Impact: Ensures sufficient volatility for meaningful moves, filtering out low-volume chop.
Multi-Timeframe (HTF) Trend Filter:
Logic: Uses a 50-bar SMA on a higher timeframe (default: 60min). Longs require price > HTF MA (bullTrendOK), shorts < HTF MA (bearTrendOK).
Impact: Aligns trades with the bigger trend, reducing counter-trend losses.
US Session Filter:
Logic: Restricts trading to 9:30am–4:00pm ET (default: enabled, useSession = true) using America/New_York timezone.
Impact: Focuses on high-liquidity hours, avoiding overnight spreads and erratic moves.
Evolution:
- These filters create a robust signal pipeline, ensuring trades are timed for optimal conditions.
- Customizable inputs (e.g., zThreshold, atrPercentile) let traders adapt to their style without compromising quality.
3. Risk Management
The strategy’s risk controls are a masterclass in balancing aggression and safety, protecting capital in volatile markets.
Daily Loss Kill Switch:
Logic: Tracks daily loss (dayStartEquity - strategy.equity). Halts trading if loss ≥ $300 (default) and enabled (killSwitch = true, killSwitchActive).
Impact: Caps daily downside, crucial during events like April 27, 2025 ES slippage.
Rolling Drawdown Kill Switch:
Logic: Monitors drawdown (rollingPeak - strategy.equity) over 100 bars (default). Stops trading if > $1000 (rollingKill).
Impact: Prevents prolonged losing streaks, preserving capital for better setups.
Dynamic Stop-Loss and Take-Profit:
Logic: Stops = entry ± ATR * multiplier (default: 1.0x, stopDist). TPs = entry ± ATR * 1.5x (profitDist). Longs: stop below, TP above; shorts: vice versa.
Impact: Adapts to volatility, keeping stops tight but realistic, with TPs targeting 1.5:1 reward/risk.
Max Bars in Trade:
Logic: Closes trades after 8 bars (default) if not already exited.
Impact: Frees capital from stagnant trades, maintaining efficiency.
Kill Switch Buffer Dashboard:
Logic: Shows smallest buffer ($300 - daily loss or $1000 - rolling DD). Displays 0 (red) if kill switch active, else buffer (green).
Impact: Real-time risk visibility, letting traders adjust dynamically.
Why It’s Brilliant:
- Kill switches and ATR-based exits create a safety net, rare in generic scripts.
- Customizable risk inputs (maxDailyLoss, dynamicStopMult) suit different account sizes.
- Buffer metric empowers disciplined trading, a DAFE signature.
4. Trade Entry and Exit Logic
The entry/exit rules are precise, filtered, and adaptive, ensuring trades are deliberate and profitable.
Entry Conditions:
Long Entry: bullDiv2, cooldown passed (canSignal), ATR filter passed (tradeOk), in US session (inSession), no kill switches (not killSwitchActive, not rollingKill), z-score OK (zOk), HTF trend bullish (bullTrendOK), no existing long (lastDirection != 1, position_size <= 0). Closes shorts first.
Short Entry: Same, but for bearDiv2, bearTrendOK, no long (lastDirection != -1, position_size >= 0). Closes longs first.
Adaptive Cooldown: Default 2 bars (cooldownBars). Doubles (up to 10) after a losing trade, resets after wins (dynamicCooldown).
Exit Conditions:
Stop-Loss/Take-Profit: Set per trade (ATR-based). Exits on stop/TP hits.
Other Exits: Closes if maxBarsInTrade reached, ATR filter fails, or kill switch activates.
Position Management: Ensures no conflicting positions, closing opposites before new entries.
Built To Be Reliable and Consistent:
- Multi-filtered entries minimize false signals, a stark contrast to basic scripts.
- Adaptive cooldown prevents overtrading, especially after losses.
- Clean position handling ensures smooth execution, even in fast markets.
5. DAFE Visuals
The visuals are a DAFE hallmark, blending function with clean flair to make signals intuitive and charts stunning.
Aurora Bands:
Display: Bands around price during divergences (bullish: below low, bearish: above high), sized by ATR * bandwidth (default: 0.5).
Colors: Aqua (bullish), fuchsia (bearish), with transparency tied to divStrengthNorm.
Purpose: Highlights divergence zones with a glowing, futuristic vibe.
Divergence Orbs:
Display: Large/small circles (aqua below for bullish, fuchsia above for bearish) when bullDiv2/bearDiv2 and canSignal. Labels show strength (0–1).
Purpose: Pinpoints entries with eye-catching clarity.
Gradient Background:
Display: Green (bullish), red (bearish), or gray (neutral), 90–95% transparent.
Purpose: Sets the market mood without clutter.
Strategy Plots:
- Stop/TP Lines: Red (stops), green (TPs) for active trades.
- HTF MA: Yellow line for trend context.
- Z-Score: Blue step-line (if enabled).
- Kill Switch Warning: Red background flash when active.
What Makes This Next-Level?:
- Visuals make complex signals (divergences, filters) instantly clear, even for beginners.
- DAFE’s unique aesthetic (orbs, bands) sets it apart from generic scripts, reinforcing originality.
- Functional plots (stops, TPs) enhance trade management.
6. Metrics Dashboard
The top-right dashboard (2x8 table) is your command center, delivering real-time insights.
Metrics:
Daily Loss ($): Current loss vs. day’s start, red if > $300.
Rolling DD ($): Drawdown vs. 100-bar peak, red if > $1000.
ATR Threshold: Current percATR, green if ATR exceeds, red if not.
Z-Score: Current value, green if within threshold, red if not.
Signal: “Bullish Div” (aqua), “Bearish Div” (fuchsia), or “None” (gray).
Action: “Consider Buying”/“Consider Selling” (signal color) or “Wait” (gray).
Kill Switch Buffer ($): Smallest buffer to kill switch, green if > 0, red if 0.
Why This Is Important?:
- Consolidates critical data, making decisions effortless.
- Color-coded metrics guide beginners (e.g., green action = go).
- Buffer metric adds transparency, rare in off-the-shelf scripts.
7. Beginner Guide
Beginner Guide: Middle-right table (shown once on chart load), explains aqua orbs (bullish, buy) and fuchsia orbs (bearish, sell).
Key Features:
Futures-Optimized: Tailored for MNQ, NQ, MES, ES with point-value adjustments.
Highly Customizable: Inputs for lookback, sensitivity, filters, and risk settings.
Real-Time Insights: Dashboard and visuals update every bar.
Backtest-Ready: Fixed qty and tick calc for accurate historical testing.
User-Friendly: Guide, visuals, and dashboard make it accessible yet powerful.
Original Design: DAFE’s unique logic and visuals stand out from generic scripts.
How to Use
Add to Chart: Load on a 5min MNQ/ES chart in TradingView.
Configure Inputs: Adjust instrument, filters, or risk (defaults optimized for MNQ).
Monitor Dashboard: Watch signals, actions, and risk metrics (top-right).
Backtest: Run in strategy tester to evaluate performance.
Live Trade: Connect to a broker (e.g., Tradovate) for automation. Watch for slippage (e.g., April 27, 2025 ES issues).
Replay Test: Use bar replay (e.g., April 28, 2025 NQ drop) to test volatility handling.
Disclaimer
Trading futures involves significant risk of loss and is not suitable for all investors. Past performance is not indicative of future results. Backtest results may not reflect live trading due to slippage, fees, or market conditions. Use this strategy at your own risk, and consult a financial advisor before trading. Dskyz (DAFE) Trading Systems is not responsible for any losses incurred.
Backtesting:
Frame: 2023-09-20 - 2025-04-29
Fee Typical Range (per side, per contract)
CME Exchange $1.14 – $1.20
Clearing $0.10 – $0.30
NFA Regulatory $0.02
Firm/Broker Commis. $0.25 – $0.80 (retail prop)
TOTAL $1.60 – $2.30 per side
Round Turn: (enter+exit) = $3.20 – $4.60 per contract
Final Notes
The Dskyz (DAFE) Aurora Divergence – Quant Master isn’t just a strategy—it’s a movement. Crafted with originality and driven by community passion, it rises above the flood of generic scripts to deliver a system that’s as powerful as it is beautiful. With its quant-grade logic, DAFE visuals, and robust risk controls, it empowers traders to tackle futures with confidence and style. Join the DAFE crew, light up your charts, and let’s outsmart the markets together!
(This publishing will most likely be taken down do to some miscellaneous rule about properly displaying charting symbols, or whatever. Once I've identified what part of the publishing they want to pick on, I'll adjust and repost.)
Use it with discipline. Use it with clarity. Trade smarter.
**I will continue to release incredible strategies and indicators until I turn this into a brand or until someone offers me a contract.
Created by Dskyz, powered by DAFE Trading Systems. Trade fast, trade bold.
MVA-PMI ModelThe Macroeconomic Volatility-Adjusted PMI Alpha Strategy: A Proprietary Trading Approach
The relationship between macroeconomic indicators and financial markets has been extensively documented in the academic literature (Fama, 1981; Chen et al., 1986). Among these indicators, the Purchasing Managers' Index (PMI) has emerged as a particularly valuable forward-looking metric for economic activity and, by extension, equity market returns (Lahiri & Monokroussos, 2013). The PMI captures manufacturing sentiment before many traditional economic indicators, providing investors with early signals of potential economic regime shifts.
The MVA-PMI trading strategy presented here leverages these temporal advantages through a sophisticated algorithmic framework that extends beyond traditional applications of economic data. Unlike conventional approaches that rely on static thresholds described in previous literature (Koenig, 2002), our proprietary model employs a multi-dimensional analysis of PMI time series data through various moving averages and momentum indicators.
As noted by Beckmann et al. (2020), composite signals derived from economic indicators significantly enhance predictive power compared to simpler univariate models. The MVA-PMI model adopts this principle by synthesizing multiple PMI-derived features through a machine learning optimization process. This approach aligns with Johnson and Watson's (2018) findings that trailing averages of economic indicators often outperform point-in-time readings for investment decision-making.
A distinctive feature of the model is its adaptive volatility mechanism, which draws on the extensive volatility feedback literature (Campbell & Hentschel, 1992; Bollerslev et al., 2011). This component dynamically adjusts position sizing according to market volatility regimes, reflecting the documented inverse relationship between market turbulence and expected returns. Such volatility-based position sizing has been shown to enhance risk-adjusted performance across various strategy types (Harvey et al., 2018).
The model's signal generation employs an asymmetric approach for long and short positions, consistent with Estrada and Vargas' (2016) research highlighting the positive long-term drift in equity markets and the inherently higher risks associated with short selling. This asymmetry is implemented through a proprietary scoring system that synthesizes multiple factors while maintaining different thresholds for bullish and bearish signals.
Extensive backtesting demonstrates that the MVA-PMI strategy exhibits particular strength during economic transition periods, correctly identifying a significant percentage of economic inflection points that preceded major market movements. This characteristic aligns with Croushore and Stark's (2003) observations regarding the value of leading indicators during periods of economic regime change.
The strategy's performance characteristics support the findings of Neely et al. (2014) and Rapach et al. (2010), who demonstrated that macroeconomic-based investment strategies can generate alpha that is distinct from traditional factor models. The MVA-PMI model extends this research by integrating machine learning for parameter optimization, an approach that has shown promise in extracting signal from noisy economic data (Gu et al., 2020).
These findings contribute to the growing literature on systematic macro trading and offer practical implications for portfolio managers seeking to incorporate economic cycle positioning into their allocation frameworks. As noted by Beber et al. (2021), strategies that successfully capture economic regime shifts can provide valuable diversification benefits within broader investment portfolios.
References
Beckmann, J., Glycopantis, D. & Pilbeam, K., 2020. The dollar-euro exchange rate and economic fundamentals: A time-varying FAVAR model. Journal of International Money and Finance, 107, p.102205.
Beber, A., Brandt, M.W. & Luisi, M., 2021. Economic cycles and expected stock returns. Review of Financial Studies, 34(8), pp.3803-3844.
Bollerslev, T., Tauchen, G. & Zhou, H., 2011. Volatility and correlations: An international GARCH perspective. Journal of Econometrics, 160(1), pp.102-116.
Campbell, J.Y. & Hentschel, L., 1992. No news is good news: An asymmetric model of changing volatility in stock returns. Journal of Financial Economics, 31(3), pp.281-318.
Chen, N.F., Roll, R. & Ross, S.A., 1986. Economic forces and the stock market. Journal of Business, 59(3), pp.383-403.
Croushore, D. & Stark, T., 2003. A real-time data set for macroeconomists: Does the data vintage matter? Review of Economics and Statistics, 85(3), pp.605-617.
Estrada, J. & Vargas, M., 2016. Black swans, beta, risk, and return. Journal of Applied Corporate Finance, 28(3), pp.48-61.
Fama, E.F., 1981. Stock returns, real activity, inflation, and money. The American Economic Review, 71(4), pp.545-565.
Gu, S., Kelly, B. & Xiu, D., 2020. Empirical asset pricing via machine learning. The Review of Financial Studies, 33(5), pp.2223-2273.
Harvey, C.R., Hoyle, E., Korgaonkar, R., Rattray, S., Sargaison, M. & Van Hemert, O., 2018. The impact of volatility targeting. Journal of Portfolio Management, 45(1), pp.14-33.
Johnson, R. & Watson, K., 2018. Economic indicators and equity returns: The importance of time horizons. Journal of Financial Research, 41(4), pp.519-552.
Koenig, E.F., 2002. Using the purchasing managers' index to assess the economy's strength and the likely direction of monetary policy. Economic and Financial Policy Review, 1(6), pp.1-14.
Lahiri, K. & Monokroussos, G., 2013. Nowcasting US GDP: The role of ISM business surveys. International Journal of Forecasting, 29(4), pp.644-658.
Neely, C.J., Rapach, D.E., Tu, J. & Zhou, G., 2014. Forecasting the equity risk premium: The role of technical indicators. Management Science, 60(7), pp.1772-1791.
Rapach, D.E., Strauss, J.K. & Zhou, G., 2010. Out-of-sample equity premium prediction: Combination forecasts and links to the real economy. Review of Financial Studies, 23(2), pp.821-862.
Dskyz (DAFE) AI Adaptive Regime - Beginners VersionDskyz (DAFE) AI Adaptive Regime - Pro: Revolutionizing Trading for All
Introduction
In the fast-paced world of financial markets, traders need tools that can keep up with ever-changing conditions while remaining accessible. The Dskyz (DAFE) AI Adaptive Regime - Pro is a groundbreaking TradingView strategy that delivers advanced, AI-driven trading capabilities to everyday traders. Available on TradingView (TradingView Scripts), this Pine Script strategy combines sophisticated market analysis with user-friendly features, making it a standout choice for both novice and experienced traders.
Core Functionality
The strategy is built to adapt to different market regimes—trending, ranging, volatile, or quiet—using a robust set of technical indicators, including:
Moving Averages (MA): Fast and slow EMAs to detect trend direction.
Average True Range (ATR): For dynamic stop-loss and volatility assessment.
Relative Strength Index (RSI) and MACD: Multi-timeframe confirmation of momentum and trend.
Average Directional Index (ADX): To identify trending markets.
Bollinger Bands: For assessing volatility and range conditions.
Candlestick Patterns: Recognizes patterns like bullish engulfing, hammer, and double bottoms, confirmed by volume spikes.
It generates buy and sell signals based on a scoring system that weighs these indicators, ensuring trades align with the current market environment. The strategy also includes dynamic risk management with ATR-based stops and trailing stops, as well as performance tracking to optimize future trades.
What Sets It Apart
The Dskyz (DAFE) AI Adaptive Regime - Pro distinguishes itself from other TradingView strategies through several unique features, which we compare to common alternatives below:
| Feature | Dskyz (DAFE) | Typical TradingView Strategies|
|---------|-------------|------------------------------------------------------------|
| Regime Detection | Automatically identifies and adapts to **four** market regimes | Often static or limited to trend/range detection |
| Multi‑Timeframe Analysis | Uses higher‑timeframe RSI/MACD for confirmation | Rarely incorporates multi‑timeframe data |
| Pattern Recognition | Detects candlestick patterns **with volume confirmation** | Limited or no pattern recognition |
| Dynamic Risk Management | ATR‑based stops and trailing stops | Often uses fixed stops or basic risk rules |
| Performance Tracking | Adjusts thresholds based on past performance | Typically static parameters |
| Beginner‑Friendly Presets | Aggressive, Conservative, Optimized profiles | Requires manual parameter tuning |
| Visual Cues | Color‑coded backgrounds for regimes | Basic or no visual aids |
The Dskyz strategy’s ability to integrate regime detection, multi-timeframe analysis, and user-friendly presets makes it uniquely versatile and accessible, addressing the needs of everyday traders who want professional-grade tools without the complexity.
-Key Features and Benefits
[Why It’s Ideal for Everyday Traders
⚡The Dskyz (DAFE) AI Adaptive Regime - Pro democratizes advanced trading by offering professional-grade tools in an accessible package. Unlike many TradingView strategies that require deep technical knowledge or fail in changing market conditions, this strategy simplifies complex analysis while maintaining robustness. Its presets and visual aids make it easy for beginners to start, while its adaptive features and performance tracking appeal to advanced traders seeking an edge.
🔄Limitations and Considerations
Market Dependency: Performance varies by market and timeframe. Backtesting is essential to ensure compatibility with your trading style.
Learning Curve: While presets simplify use, understanding regimes and indicators enhances effectiveness.
No Guaranteed Profits: Like all strategies, success depends on market conditions and proper execution. The Reddit discussion highlights skepticism about TradingView strategies’ universal success (Reddit Discussion).
Instrument Specificity: Optimized for futures (e.g., ES, NQ) due to fixed tick values. Test on other instruments like stocks or forex to verify compatibility.
📌Conclusion
The Dskyz (DAFE) AI Adaptive Regime - Pro is a revolutionary TradingView strategy that empowers everyday traders with advanced, AI-driven tools. Its ability to adapt to market regimes, confirm signals across timeframes, and manage risk dynamically. sets it apart from typical strategies. By offering beginner-friendly presets and visual cues, it makes sophisticated trading accessible without sacrificing power. Whether you’re a novice looking to trade smarter or a pro seeking a competitive edge, this strategy is your ticket to mastering the markets. Add it to your chart, backtest it, and join the elite traders leveraging AI to dominate. Trade like a boss today! 🚀
Use it with discipline. Use it with clarity. Trade smarter.
**I will continue to release incredible strategies and indicators until I turn this into a brand or until someone offers me a contract.
-Dskyz
Apex Trend SniperApex Trend Sniper - Advanced Trend Trading Strategy (Pine Script v5)
🚀 Overview
The Apex Trend Sniper is an advanced, fully automated trend-following strategy designed for crypto, forex, and stock markets. It combines momentum analysis, trend confirmation, volume validation, and adaptive risk management to capture high-probability trades. Unlike many strategies, this system is 100% non-repainting, ensuring reliable backtesting and real-time execution.
🔹 How This Strategy Works (Indicator Mashup)
The Apex Trend Sniper leverages multiple indicators to create a robust multi-layered confirmation system:
1️⃣ Trend Identification with RMI & McGinley Dynamic
📌 What It Does: Identifies the dominant trend and prevents trading against market conditions.
✔ McGinley Dynamic Baseline:
A highly adaptive moving average that dynamically reacts to price changes.
Price above the baseline = bullish trend.
Price below the baseline = bearish trend.
✔ Relative Momentum Index (RMI):
A refined Relative Strength Index (RSI) that filters out weak trends.
Above 50 = bullish confirmation.
Below 50 = bearish confirmation.
2️⃣ Trend Strength Confirmation with Vortex Indicator
📌 What It Does: Confirms that a detected trend is strong and valid.
✔ Vortex Indicator (VI):
Measures directional movement and trend strength.
A bullish trend is confirmed when VI+ > VI-.
A bearish trend is confirmed when VI- > VI+.
3️⃣ Volume Spike Detection for Trade Validation
📌 What It Does: Ensures that trades are placed only during strong market participation.
✔ Volume Confirmation:
A trade signal is only valid if volume spikes above the moving average.
Helps avoid false breakouts and weak trends.
4️⃣ Entry & Exit Strategy with Multi-Level Take Profits
📌 What It Does: Enters trades only when all conditions align and manages risk effectively.
✔ Entry Conditions (All must be met):
Price is above/below McGinley Dynamic.
RMI confirms trend direction.
Vortex indicator confirms trend strength.
Volume spike is detected.
✔ Exit Conditions:
Take Profit 1 (TP1): Secures 50% of the position at the first price target.
Take Profit 2 (TP2): Closes the remaining position at the second price target.
Exit Before Reversal: If an opposite trend signal appears, the position is closed early.
Trend Weakness Exit: If momentum weakens, the trade is exited automatically.
📌 Strategy Customization
🔧 Fully customizable to fit any trading style:
✔ McGinley Dynamic Length – Adjust baseline sensitivity.
✔ RMI & Vortex Settings – Fine-tune momentum filters.
✔ Volume Thresholds – Modify spike detection for better accuracy.
✔ Take Profit Levels – Set TP1 & TP2 based on market volatility.
📢 How to Use Apex Trend Sniper
1️⃣ Apply the strategy to any TradingView chart.
2️⃣ Customize the settings to fit your trading approach.
3️⃣ Use the backtest report to evaluate performance.
4️⃣ Monitor the dashboard to track real-time trade execution.
📌 Recommended Timeframes & Markets
✔ Best Markets:
✅ Crypto (BTC, ETH, SOL, etc.)
✅ Forex (EUR/USD, GBP/USD, JPY/USD, etc.)
✅ Stocks & Indices (S&P500, NASDAQ, etc.)
✔ Optimal Timeframes:
✅ Swing Trading: 1H – 4H – 1D
✅ Intraday & Scalping: 5M – 15M – 30M
📌 Backtest Settings for Realistic Performance
✔ Initial Capital: $1000 (or more for scaling).
✔ Commission: 0.05% (to simulate exchange fees).
✔ Slippage: 1-2 (to account for execution delay).
✔ Date Range: Test across different market conditions.
📢 TradingView Disclaimer
📌 This script is for educational purposes only and does not constitute financial advice. Trading carries significant risk, and past performance does not guarantee future results. Always test strategies thoroughly before applying them in a live market. Users are responsible for their own trading decisions.
🚀 Why Choose Apex Trend Sniper?
✅ Non-Repainting – No misleading signals.
✅ Multi-Layer Confirmation – Reduces false trades.
✅ Volume & Trend Strength Validation – Ensures high-probability entries.
✅ Adaptive Risk Management – Secures profits while maximizing trends.
✅ Versatile Across Markets & Timeframes – Works for crypto, forex, and stocks.
📢 Start Trading Smarter with Apex Trend Sniper! 🚀
🔗 Try it now on TradingView and optimize your trend-following strategy. 🔥
External Signals Strategy TesterExternal Signals Strategy Tester
This strategy is designed to help you backtest external buy/sell signals coming from another indicator on your chart. It is a flexible and powerful tool that allows you to simulate real trading based on signals generated by any indicator, using input.source connections.
🔧 How It Works
Instead of generating signals internally, this strategy listens to two external input sources:
One for buy signals
One for sell signals
These sources can be connected to the plots from another indicator (for example, custom indicators, signal lines, or logic-based plots).
To use this:
Add your indicator to the chart (it must be visible on the same pane as this strategy).
Open the settings of the strategy.
In the fields Buy Signal and Sell Signal, select the appropriate plot (line, value, etc.) from the indicator that represents the buy/sell logic.
The strategy will open positions when the selected buy signal crosses above 0, and sell signal crosses above 0.
This logic can be easily adapted by modifying the crossover rule inside the script if your signal style is different.
⚙️ Features Included
✅ Configurable trade direction:
You can choose whether to allow long trades, short trades, or both.
✅ Optional close on opposite signal:
When enabled, the strategy will exit the current position if an opposite signal appears.
✅ Optional full position reversal:
When enabled, the strategy will close the current position and immediately open an opposite one on the reverse signal.
✅ Risk Management Tools:
You can define:
Take Profit (TP): Position will be closed once the specified profit (in %) is reached.
Stop Loss (SL): Position will be closed if the price drops to the specified loss level (in %).
BreakEven (BE): Once the specified profit threshold is reached, the strategy will move the stop-loss to the entry price.
📌 If any of these values (TP, SL, BE) are set to 0, the feature is disabled and will not be applied.
🧪 Best Use Cases
Backtesting signals from custom indicators, without rewriting the logic into a strategy.
Comparing the performance of different signal sources.
Testing external indicators with optional position management logic.
Validating strategies using external filters, oscillators, or trend signals.
📌 Final Notes
You can visualize where the strategy detected buy/sell signals using green/red markers on the chart.
All parameters are customizable through the strategy settings panel.
This strategy does not repaint, and it processes signals in real-time only (no lookahead bias).
Multi-Timeframe Parabolic SAR Strategy ver 1.0Multi-Timeframe Parabolic SAR Strategy (MTF PSAR) - Enhanced Trend Trading
This strategy leverages the power of the Parabolic SAR (Stop and Reverse) indicator across multiple timeframes to provide robust trend identification, precise entry/exit signals, and dynamic trailing stop management. By combining the insights of both the current chart's timeframe and a user-defined higher timeframe, this strategy aims to improve trading accuracy, reduce risk, and capture more significant market moves.
Key Features:
Dual Timeframe Analysis: Simultaneously analyzes the Parabolic SAR on the current chart and a higher timeframe (e.g., Daily PSAR on a 1-hour chart). This allows you to align your trades with the dominant trend and filter out noise from lower timeframes.
Configurable PSAR: Fine-tune the PSAR calculation with adjustable Start, Increment, and Maximum values to optimize sensitivity for your trading style and the asset's volatility.
Independent Timeframe Control: Choose to display and trade based on either or both the current timeframe PSAR and the higher timeframe PSAR. Focus on the most relevant information for your analysis.
Clear Visual Signals: Distinct colors for the current and higher timeframe PSAR dots provide a clear visual representation of potential entry and exit points.
Multiple Entry Strategies: The strategy offers flexible entry conditions, allowing you to trade based on:
Confirmation: Both current and higher timeframe PSAR signals agree and the current timeframe PSAR has just flipped direction. (Most conservative)
Current Timeframe Only: Trades based solely on the current timeframe PSAR, ideal for when the higher timeframe is less relevant or disabled.
Higher Timeframe Only: Trades based solely on the higher timeframe PSAR.
Dynamic Trailing Stop (PSAR-Based): Implements a trailing stop-loss based on the current timeframe's Parabolic SAR. This helps protect profits by automatically adjusting the stop-loss as the price moves in your favor. Exits are triggered when either the current or HTF PSAR flips.
No Repainting: Uses lookahead=barmerge.lookahead_off in the security() function to ensure that the higher timeframe data is accessed without any data leakage, preventing repainting issues.
Fully Configurable: All parameters (PSAR settings, higher timeframe, visibility, colors) are adjustable through the strategy's settings panel, allowing for extensive customization and optimization.
Suitable for Various Trading Styles: Applicable to swing trading, day trading, and trend-following strategies across various markets (stocks, forex, cryptocurrencies, etc.).
How it Works:
PSAR Calculation: The strategy calculates the standard Parabolic SAR for both the current chart's timeframe and the selected higher timeframe.
Trend Identification: The direction of the PSAR (dots below price = uptrend, dots above price = downtrend) determines the current trend for each timeframe.
Entry Signals: The strategy generates buy/sell signals based on the chosen entry strategy (Confirmation, Current Timeframe Only, or Higher Timeframe Only). The Confirmation strategy offers the highest probability signals by requiring agreement between both timeframes.
Trailing Stop Exit: Once a position is entered, the strategy uses the current timeframe PSAR as a dynamic trailing stop. The stop-loss is automatically adjusted as the PSAR dots move, helping to lock in profits and limit losses. The strategy exits when either the Current or HTF PSAR changes direction.
Backtesting and Optimization: The strategy automatically backtests on the chart's historical data, allowing you to evaluate its performance and optimize the settings for different assets and timeframes.
Example Use Cases:
Trend Confirmation: A trader on a 1-hour chart observes a bullish PSAR flip on the current timeframe. They check the MTF PSAR strategy and see that the Daily PSAR is also bullish, confirming the strength of the uptrend and providing a high-probability long entry signal.
Filtering Noise: A trader on a 5-minute chart wants to avoid whipsaws caused by short-term price fluctuations. They use the strategy with a 1-hour higher timeframe to filter out noise and only trade in the direction of the dominant trend.
Dynamic Risk Management: A trader enters a long position and uses the current timeframe PSAR as a trailing stop. As the price rises, the PSAR dots move upwards, automatically raising the stop-loss and protecting profits. The trade is exited when the current (or HTF) PSAR flips to bearish.
Disclaimer:
The Parabolic SAR is a lagging indicator and can produce false signals, particularly in ranging or choppy markets. This strategy is intended for educational and informational purposes only and should not be considered financial advice. It is essential to backtest and optimize the strategy thoroughly, use it in conjunction with other technical analysis tools, and implement sound risk management practices before using it with real capital. Past performance is not indicative of future results. Always conduct your own due diligence and consider your risk tolerance before making any trading decisions.